Pular para o conteúdo principal

Configurações de planos de contas do Beancount por setor

Exemplos de planos de contas do Beancount para freelancers, pequenas empresas e finanças domésticas, com o motivo de cada conta e um trecho de livro-razão.

Configurações de Exemplo para Freelancers, Pequenas Empresas e Finanças Pessoais

Neste guia, exploramos como adaptar um livro-razão Beancount para diferentes necessidades: um profissional freelancer, uma pequena empresa boutique e finanças domésticas pessoais. Cada cenário traz estruturas de contas e considerações únicas. Explicaremos a lógica por trás de cada configuração, forneceremos exemplos de trechos do Beancount e destacaremos recursos úteis (como tags personalizadas e importações automatizadas) que facilitam o acompanhamento. O tom é instrutivo, mas acessível – seja você um desenvolvedor, um profissional com afinidade tecnológica ou um entusiasta de finanças, estes exemplos ajudarão você a aplicar o Beancount no mundo real.

Freelancers​

Freelancers (como desenvolvedores de software ou designers gráficos) frequentemente lidam com múltiplos clientes e despesas de projetos. Uma configuração simples do Beancount pode ajudar a acompanhar a receita de cada cliente, as despesas do negócio (incluindo quaisquer subcontratados contratados) e o dinheiro reservado para impostos. O objetivo é manter tudo simples, para que escale conforme seu negócio freelance cresce, sem complexidade desnecessária.

Contas Principais para um Freelancer: Um livro-razão de freelancer normalmente separa as finanças do negócio das finanças pessoais. Por exemplo, você pode usar:

  • Assets:Business:Checking – Uma conta bancária empresarial para todos os pagamentos de clientes e despesas do negócio.
  • Assets:Business:TaxSavings – Uma conta poupança para reservar uma parte da receita para pagamento de impostos (já que nenhum empregador está retendo impostos para você).
  • Income:Client:Nome – Contas de receita para pagamentos de clientes. Você pode criar subcontas por cliente principal (por exemplo, Income:Client:ACME), ou usar uma única conta Income:Freelance com os nomes dos clientes marcados nas transações.
  • Expenses:Business:Contractors – Para pagamentos a quaisquer subcontratados ou trabalho terceirizado.
  • Expenses:Business:Software (e outras categorias como Travel, Supplies) – Para despesas regulares do negócio (assinaturas de software, equipamentos, viagens a locais de clientes, etc.).
  • Equity:OwnerDraw – (Opcional) Para registrar transferências de lucro do negócio para você pessoalmente. Isso ajuda a distinguir os fundos do negócio dos fundos pessoais quando você se paga.

Lógica: Essa estrutura garante que todo o dinheiro relacionado ao negócio seja acompanhado em contas dedicadas. A receita de cada cliente é registrada (facilitando ver quem são seus principais clientes), e as despesas são categorizadas para deduções na época do imposto. Reservar impostos em uma conta de ativo separada (ou registrar um passivo para impostos devidos) evita gastar acidentalmente dinheiro que será devido ao governo. O livro-razão permanece simples: se você conquistar novos clientes ou categorias de despesas, pode adicionar novas contas ou usar tags sem reorganizar tudo. Uma armadilha comum é misturar transações pessoais e do negócio em uma única conta; ao manter uma conta corrente empresarial dedicada (e a conta de ativo correspondente), a conciliação e os relatórios ficam mais limpos. Outra armadilha a evitar é esquecer de registrar transferências de dinheiro para impostos ou retiradas do proprietário – ao usar contas como TaxSavings e OwnerDraw, cada dólar é contabilizado.

Para executar esta configuração como um livro-razão hospedado com receita por cliente, contas a receber de faturas e uma reserva de impostos, consulte Beancount.io para freelancers.

Recursos do Beancount a Destacar: Tags e metadados são extremamente úteis para freelancers. Por exemplo, você pode marcar transações com um número de projeto ou fatura, ou usar um campo de metadados para anotar o nome do cliente caso opte por não usar contas de receita separadas por cliente. Isso facilita filtrar ou consultar transações de um cliente ou projeto específico (por exemplo, somar todas as despesas marcadas com #ProjectX). Além disso, os importadores automatizados do Beancount podem simplificar a entrada de dados – por exemplo, você pode configurar um importador para seus extratos bancários ou de cartão de crédito para ingerir transações no seu livro-razão, bastando depois adicionar os nomes apropriados de contas de despesa ou receita. Isso economiza tempo quando você tem muitas transações pequenas (como assinaturas de software ou despesas de viagem).

Trecho de Exemplo de Razão para Freelancer​

Abaixo está um trecho simplificado do Beancount para um desenvolvedor freelancer. Ele mostra a abertura de algumas contas principais, um pagamento recebido de um cliente, um pagamento a um subcontratado, uma despesa típica do negócio e a movimentação de dinheiro para uma conta de poupança para impostos. (Na prática, você também registraria outras despesas, como viagens ou compras de equipamentos, de forma semelhante.)

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
 
; Client income – payment for an invoice
2025-08-15 * "Invoice payment from ACME Corp"
  invoice: "INV-2025-08-15"
  Assets:Business:Checking       5000 USD
  Income:Client:ACME           -5000 USD
 
; Regular expense – e.g. software subscription for the business
2025-08-05 * "GitHub Subscription"
  Expenses:Business:Software       15 USD
  Assets:Business:Checking        -15 USD
 
; Contractor expense – paying a subcontractor for help
2025-08-20 * "Contractor payment – Jane Doe"
  Expenses:Business:Contractors   2000 USD
  Assets:Business:Checking      -2000 USD
 
; Tax withholding – moving money to tax savings
2025-08-31 * "Set aside Q3 taxes" #tax
  Assets:Business:TaxSavings     1500 USD
  Assets:Business:Checking     -1500 USD

Vamos detalhar o que está acontecendo:

  • Abrimos as contas necessárias no topo (com uma data de início). O Beancount exige que cada conta seja aberta antes de ser usada — um lançamento em uma conta não declarada é um erro de carregamento —, portanto essas diretivas open são obrigatórias, não estilo opcional. As contas Assets:Business:Checking e Assets:Business:TaxSavings manterão saldos em USD; contas de receita e despesa podem ficar sem moeda na diretiva open, pois herdarão as moedas das transações (USD neste caso).
  • Pagamento de fatura do cliente: Em 2025-08-15, uma transação de receita registra um pagamento de cliente de $5.000 por uma fatura. Creditamos Income:Client:ACME (a receita aumenta com um valor negativo no método das partidas dobradas) e debitamos a conta corrente. Um campo de metadados invoice: "INV-2025-08-15" é incluído para anotar o número da fatura – isso é opcional, mas mostra como você pode anexar informações extras a uma transação. Você também poderia marcar essa transação com #ACME ou #client-ACME para filtragem rápida. Se você tivesse múltiplos clientes, poderia usar uma conta geral Income:Clients e contar com tais metadados ou o campo Payee para distinguir clientes, em vez de criar muitas subcontas.
  • Despesa do negócio (software): Em 2025-08-05, registramos uma despesa de $15 para uma assinatura do GitHub (talvez para repositórios privados ou outros serviços). O lançamento vai para Expenses:Business:Software e reduz a conta corrente do negócio. Pequenas despesas recorrentes como essa podem ser marcadas (por exemplo, adicionamos #tax na transação de impostos abaixo; da mesma forma, você pode marcar certas despesas como #recurring se ocorrerem mensalmente, etc.). Neste caso, o próprio nome da conta (Software) já deixa claro.
  • Pagamento a subcontratado: Em 2025-08-20, o freelancer pagou a um subcontratado (Jane Doe) $2.000. Isso é registrado como uma despesa em Expenses:Business:Contractors e saída de caixa da conta corrente. Você poderia incluir o nome do subcontratado na narração (como fizemos) ou como um campo de metadados (por exemplo, contractor: "Jane Doe"). Isso mantém uma trilha de auditoria de quem você pagou e por quê (útil se você precisar de detalhes durante a declaração de impostos ou orçamento).
  • Transferência para poupança de impostos: Em 2025-08-31, o freelancer transfere $1.500 da conta corrente principal para uma conta dedicada de poupança para impostos. Marcamos essa transação com #tax para visibilidade. Isso não é uma despesa (você está apenas movendo seu próprio dinheiro), então vai entre duas contas de ativo. Ao fazer isso a cada mês ou trimestre, você acumula fundos para cobrir os impostos estimados. Quando chegar a hora de efetivamente pagar os impostos ao governo, você registraria uma despesa (digamos, Expenses:Taxes) e uma dedução da conta TaxSavings (ou Checking). Uma armadilha comum é tratar essa transferência como uma despesa em seus relatórios – lembre-se, não é uma despesa, apenas uma alocação preventiva. Somente o pagamento real de imposto à Receita Federal/autoridade fiscal seria uma despesa (ou redução de um passivo de imposto acumulado, se você acompanhar dessa forma).

Resumo: O livro-razão Beancount de um freelancer enfatiza simplicidade e clareza. Toda a receita e saídas ligadas ao negócio são registradas metodicamente. Ao usar nomes de contas significativos e tags/metadados ocasionais, você pode gerar relatórios por cliente ou por categoria de despesa facilmente (por exemplo, receita total por cliente, total gasto com subcontratados neste ano, etc.). Essa configuração é escalável – você pode adicionar novos clientes ou categorias de despesas conforme seu negócio evolui. Com recursos como importações automatizadas (para puxar transações bancárias) e marcação personalizada para projetos ou faturas, o Beancount pode reduzir bastante a sobrecarga contábil para freelancers, ao mesmo tempo que fornece uma visão clara das finanças a qualquer momento.

Pequenas Empresas​

A seguir, considere uma pequena empresa boutique de e-commerce – por exemplo, uma loja online que vende produtos artesanais. Este cenário adiciona complexidades como gestão de estoque, custo das mercadorias vendidas (COGS) e o tratamento de processadores de pagamento online. O Beancount pode acomodar isso com uma estrutura de contas bem pensada e um método de registro de transações. Usaremos um caso em que o negócio acompanha os produtos em estoque, registra vendas por meio de uma plataforma online (como Shopify com Stripe para pagamentos) e registra despesas típicas do negócio.

Contas Principais para uma Loja Boutique de E-commerce: Além das contas básicas de banco e despesas, o livro-razão de uma empresa de varejo incluirá contas para acompanhar o estoque e os fluxos de vendas:

  • Assets:Bank:Checking – A conta corrente do negócio (para pagar fornecedores, despesas operacionais e receber transferências dos processadores de pagamento).
  • Assets:Stripe:Balance (ou Assets:PayPal, etc.) – Uma conta de compensação para fundos coletados por meio de pagamentos online que ainda não chegaram ao banco. Por exemplo, quando um cliente paga via Stripe, o dinheiro pode ficar em uma conta Stripe antes de ser depositado no seu banco em lotes.
  • Assets:Inventory:Produto – Contas de estoque para seus produtos. Você pode tratar cada produto (ou categoria de produtos) como uma commodity no Beancount para acompanhar as quantidades em mãos. Por exemplo, Assets:Inventory:Widgets pode armazenar a quantidade de itens "Widget" atualmente em estoque, avaliados pelo seu preço de custo.
  • Income:Sales – Registra a receita das vendas de produtos. Você pode usar subcontas para diferentes canais de venda (por exemplo, Income:Sales:Online vs Income:Sales:InStore) se o negócio tivesse múltiplos canais, mas vamos manter simples com uma única conta de receita de vendas.
  • Expenses:COGS – Custo das Mercadorias Vendidas, para capturar a base de custo dos itens de estoque quando são vendidos. Essa conta mostrará efetivamente quanto custou o estoque vendido para você (como proprietário do negócio) ao longo de um período. É um componente essencial para calcular o lucro bruto.
  • Expenses:Fees – Para taxas de processamento de pagamento e taxas de plataforma (cobranças do Stripe, taxas do Shopify, taxas do PayPal, etc., todas podem ser registradas aqui). Você poderia separar isso em contas mais detalhadas (por exemplo, Expenses:Fees:Stripe e Expenses:Fees:Shopify) se desejar, mas uma conta pode ser suficiente para todas as taxas de transação.
  • Expenses:Operating – Despesas gerais do negócio não diretamente ligadas ao COGS, como marketing, hospedagem web, software, materiais de envio, etc. Estas podem ser divididas em subcontas (por exemplo, Expenses:Marketing, Expenses:WebHosting, Expenses:Shipping) para analisar diferentes centros de custo.
  • Liabilities:SalesTax – (Opcional, se aplicável) Se o negócio precisar coletar imposto sobre vendas ou IVA sobre as vendas, esta conta de passivo acompanha os impostos coletados mas ainda não recolhidos ao governo. Cada venda então separaria a parte do imposto para esta conta. Isso garante que os impostos coletados não sejam contados como receita e sejam reservados para pagamento às autoridades fiscais.
  • Equity:OwnerEquity – (Opcional) Representa o investimento do proprietário e os lucros retidos. Quando o negócio foi iniciado, qualquer financiamento inicial do proprietário seria creditado aqui (com um débito no banco ou estoque, se ele contribuísse com dinheiro ou estoque). Além disso, se o proprietário retirar lucro (distribuições), isso poderia ser registrado contra esta conta de patrimônio líquido. Isso mantém o balanço patrimonial equilibrado, mas nas operações do dia a dia não entra em jogo com frequência.

Lógica: Essa configuração segrega o fluxo de mercadorias e dinheiro. As compras de estoque são inicialmente registradas no balanço patrimonial (como ativos), em vez de imediatamente como despesas. Somente quando você vende os produtos é que você contabiliza seu custo (COGS), combinando a receita com a despesa relacionada para um cálculo adequado do lucro. A receita das vendas é registrada pelo preço bruto de venda, enquanto as taxas são registradas separadamente, para que você possa ver tanto a receita bruta quanto as taxas pagas (e, portanto, a receita líquida). Usar uma conta de compensação como Assets:Stripe:Balance ajuda na conciliação dos depósitos – o dinheiro se move do Stripe para o seu banco em blocos, e você pode registrar essas transferências sem confusão. Uma armadilha comum para novos lojistas é negligenciar o registro adequado do estoque – por exemplo, lançar todas as compras de estoque imediatamente como despesa. Isso pode ser aceitável para acompanhamento de fluxo de caixa, mas distorce seu lucro: você parecerá menos lucrativo nos meses em que estoca e mais lucrativo nos meses em que vende, embora o estoque tenha sido comprado antes. Ao usar uma conta de ativo de estoque e COGS, você alinha o custo com a venda. Outra armadilha é não contabilizar taxas ou reembolsos, o que pode fazer seus saldos bancários ou do Stripe não corresponderem à receita registrada. Evitamos isso registrando explicitamente as taxas e usando a conta de ativo Stripe para acompanhar o que o Stripe deve ou pagou.

Para manter a contabilidade de uma pequena empresa hospedada, com relatórios que seu contador consegue ler e um livro-razão que você pode exportar a qualquer momento, veja Beancount.io para pequenas empresas.

Recursos do Beancount a Destacar: O acompanhamento de estoque no Beancount aproveita sua capacidade de lidar com commodities e custos. Cada produto pode ser um símbolo de commodity (por exemplo, WIDGET), permitindo registrar tanto a quantidade quanto o custo unitário. Quando você vende itens, você nomeia qual lote de custo está reduzindo, e o Beancount faz o saque — consulte métodos de contabilização de estoque para o conjunto completo. O método de bookkeeping padrão é STRICT, que exige que o lote seja inequívoco; é por isso que o exemplo o nomeia explicitamente com {10 USD}. Para que o Beancount escolha o lote automaticamente (mais antigo primeiro), opte pela conta no FIFO em sua diretiva open: open Assets:Inventory:Widgets WIDGET "FIFO". Usaremos a forma STRICT explícita no exemplo. Você também pode usar metadados ou links para vincular vendas e suas entradas de COGS correspondentes (por exemplo, usando o mesmo número de pedido em ambas as transações, ou uma tag compartilhada como #order1001 na venda e na redução de estoque, facilitando consultar ou verificar que cada venda tem uma entrada de COGS correspondente). Além disso, importações automatizadas podem ajudar aqui: você pode usar um script para importar dados de vendas do Shopify ou relatórios de pagamento do Stripe, ou importar seus extratos bancários para capturar transações de despesas e pagamentos. Automatizar essas tarefas repetitivas de entrada de dados significa que você passa mais tempo analisando e menos tempo digitando números.

Trecho de Exemplo de Razão para Pequena Empresa​

Abaixo está um exemplo condensado do Beancount para nossa loja boutique de e-commerce. Ilustramos a compra de estoque, o registro de uma venda (com a taxa do processador de pagamento deduzida) e o registro do custo das mercadorias vendidas para essa venda. Na prática, você também registraria outras despesas (como taxas de plataforma, custos de publicidade, etc.) de forma semelhante ao exemplo de taxa mostrado. Assumimos USD como moeda e um produto chamado "Widget" que acompanhamos como uma commodity no estoque.

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
 
; Purchase inventory (50 units of Widget at $10 cost each)
2025-03-10 * "Bought 50 Widgets from SupplierCo"
  Assets:Inventory:Widgets      50 WIDGET {10 USD}
  Assets:Bank:Checking        -500 USD
 
; Sale to customer (Order #1001 via online store, 2 Widgets sold)
2025-04-05 * "Sale Order #1001 (2x Widget via Shopify)"
  Assets:Stripe:Balance         58 USD   ; net payment received after fees
  Expenses:Fees                  2 USD   ; processing fee (Stripe)
  Income:Sales                 -60 USD   ; revenue for 2 Widgets (@ $30 each)
 
; Cost of goods sold for the above sale (2 Widgets at $10 cost each)
2025-04-05 * "COGS for Order #1001 (2x Widget)"
  Expenses:COGS                 20 USD
  Assets:Inventory:Widgets     -2 WIDGET {10 USD}

Aqui está o que está acontecendo passo a passo:

  • Abertura de contas: Abrimos a conta corrente, a conta de saldo do Stripe, uma conta de estoque para Widgets (declarada com a commodity WIDGET para rastrear unidades) e as contas centrais de receita e despesa (Sales, COGS, Fees). Ao declarar Assets:Inventory:Widgets WIDGET, sinalizamos que esta conta manterá quantidades da commodity "WIDGET". Isso garante que o Beancount saiba esperar unidades de commodity ali, e podemos anexar custo a essas unidades.

  • Compra de estoque: Em 2025-03-10, compramos estoque – 50 unidades de Widget de um fornecedor a $10 cada, totalizando $500. A transação debita Assets:Inventory:Widgets com 50 WIDGET {10 USD}. Isso significa que 50 unidades da commodity WIDGET, cada uma com um custo registrado de 10 USD, são adicionadas à conta de estoque. O crédito é Assets:Bank:Checking -500 USD (desembolso de caixa). Observe que não tocamos diretamente em uma conta de despesa aqui; estamos capitalizando a compra como ativo de estoque. Agora nosso balanço patrimonial tem 50 Widgets avaliados em $500 no total em estoque. (Se você executar um relatório de balanço, a conta de Inventário mostraria 50 unidades WIDGET no valor de $500.)

  • Registro de uma venda (Pedido #1001): Em 2025-04-05, registramos uma venda de 2 Widgets por meio de nossa loja online. A narração inclui um número de pedido para clareza. Esta transação envolve três lançamentos:

    • Assets:Stripe:Balance 58 USD: dinheiro recebido da venda, mas atualmente no Stripe (líquido de taxas). Suponha que o cliente pagou $60 no total; o Stripe cobrou uma taxa de $2, e $58 estão agora em nossa conta Stripe (a ser transferido para nosso banco depois). Registramos os $58 como um ativo no Stripe.
    • Expenses:Fees 2 USD: a taxa de $2 é registrada como despesa do negócio. Isso garante que nossa demonstração de resultados reflita esse custo, e nosso ativo Stripe mais a despesa de taxa juntos equivalem ao pagamento total do cliente.
    • Income:Sales -60 USD: registramos $60 de receita de vendas. (As contas de receita aumentam com créditos, daí o valor negativo na notação do Beancount).

    Após esta transação, o efeito líquido é: Income:Sales aumentada em 60, um ativo extra de $58 (a receber do Stripe) e $2 de despesa pela taxa. Se o Stripe depois depositar os $58 em nosso banco, registraríamos uma transferência simples como Assets:Bank:Checking 58 USD / Assets:Stripe:Balance -58 USD na data do pagamento – isso move o ativo da conta Stripe para o banco, sem impacto na receita ou despesa (apenas deslocando ativos). Não mostramos essa transferência acima, mas é um passo importante na contabilidade real para manter sua conta Stripe em $0 assim que tudo for transferido.

  • Registro do COGS para a venda: Também em 2025-04-05, temos uma transação separada para registrar o custo dos 2 Widgets vendidos. Debitamos Expenses:COGS 20 USD e creditamos Assets:Inventory:Widgets -2 WIDGET {10 USD}. O que isso faz é remover 2 unidades do estoque (cada uma tinha um custo de $10 conforme registrado anteriormente, portanto $20 no total). Especificamos {10 USD} para dizer ao Beancount de qual lote de custo sacar – neste caso, corresponde ao lote que adicionamos em 2025-03-10. Agora a conta de estoque terá 48 Widgets restantes, e um custo associado de $480. Os $20 são movidos para a despesa de COGS, que aparecerá na demonstração de resultados, reduzindo o lucro bruto pelo custo dessas mercadorias. (Se não registrássemos isso, nossa receita estaria superestimada em relação às despesas.) Usamos uma transação separada para clareza, mas também é possível combinar a venda e o COGS em uma única transação de várias linhas. Alguns preferem dividi-las como mostrado para legibilidade e conciliação (você pode vincular claramente cada entrada de COGS a um pedido). Também repetimos o número do pedido na narração para ver facilmente que esta entrada de COGS corresponde ao Pedido #1001. Uma boa prática é garantir que cada venda tenha uma entrada de COGS correspondente quando houver estoque envolvido – faltar uma significaria que suas contagens de estoque estão erradas. Uma armadilha a evitar é esquecer de remover o estoque de uma venda, o que deixaria seu balanço patrimonial com estoque fantasma e suas despesas subestimadas. Usar os recursos de estoque do Beancount (a notação de custo {}) ajuda a detectar se você tentar remover mais unidades do que tem em mãos (o software dará erro nesse caso).

Resumo: Uma pequena empresa usando o Beancount pode manter um sistema contábil surpreendentemente robusto. Ao estruturar as contas para acompanhar onde o dinheiro está, de onde vem e como os custos fluem, você obtém uma imagem precisa da lucratividade. Nosso exemplo mostrou como lidar com estoque e vendas; você registraria de forma semelhante outras transações, como pagar uma conta de internet (Expenses:Operating:Internet vs. Assets:Bank:Checking), receber um empréstimo ou investimento (Assets:Bank vs. Liabilities:Loan ou Equity:OwnerEquity), ou pagar imposto sobre vendas (Liabilities:SalesTax vs. Assets:Bank quando recolhido). O ponto-chave é a consistência: registre cada tipo de transação com o mesmo padrão, e o Beancount manterá os livros equilibrados. Com recursos como importação automatizada de dados (por exemplo, puxando taxas mensais do Stripe ou transações bancárias) e tags/links personalizados (para correlacionar transações relacionadas como vendas e reembolsos), o sistema pode ser tanto flexível quanto eficiente. O resultado é um livro-razão organizado que pode escalar conforme o negócio cresce – você pode adicionar novas contas de estoque de produtos, novas categorias de despesas ou fluxos de receita adicionais (digamos, um novo marketplace online) sem reformular todo o sistema.

Finanças Pessoais​

Por fim, vamos considerar o uso do Beancount para finanças pessoais ou domésticas. Essa configuração é para um indivíduo ou família que gerencia despesas diárias, contas bancárias, cartões de crédito, empréstimos e investimentos. A ênfase aqui está em acompanhar para onde vai seu dinheiro (despesas), de onde ele vem (receita) e como é poupado ou investido (ativos e passivos). O Beancount pode substituir ou complementar aplicativos de orçamento, oferecendo uma visão transparente e personalizável de suas finanças, com o rigor da contabilidade de partidas dobradas garantindo que nada seja contado duas vezes ou esquecido.

Contas Principais para Finanças Pessoais: Um livro-razão de finanças pessoais normalmente incluirá uma variedade de contas de ativo, passivo, receita e despesa:

  • Assets:Bank:Checking – Sua conta corrente principal para depósitos de renda e pagamento de contas.
  • Assets:Bank:Savings – Conta poupança para fundo de emergência ou objetivos específicos. (Você pode ter várias contas de poupança ou investimento – cada uma pode ser uma conta de ativo).
  • Assets:Cash – Se você usa dinheiro para despesas, pode ter uma conta de caixa para acompanhar saques e gastos em dinheiro.
  • Assets:Investments:Corretora – Contas de investimento, como uma corretora, previdência/401(k)/IRA, etc. Estas podem ser ainda mais detalhadas por tipos de investimento ou apenas agrupadas como uma conta por instituição. Por exemplo, Assets:Investments:VanguardIRA ou Assets:Investments:Robinhood. Acompanhar investimentos também pode envolver commodities para ações ou fundos, mas se isso for muito detalhado, você pode simplesmente acompanhar aportes e saldos das contas.
  • Liabilities:CreditCard:Nome – Uma conta por cartão de crédito (por exemplo, Liabilities:CreditCard:Visa ou pelo nome do banco). Todas as compras no cartão são registradas aqui (com uma despesa equivalente), e os pagamentos do cartão são transferências que reduzem esse passivo.
  • Liabilities:Loan:Nome – Quaisquer empréstimos (empréstimo estudantil, financiamento imobiliário, financiamento de carro) podem ser acompanhados com uma conta de passivo. Você registraria o saldo do principal e cada pagamento dividindo juros (despesa) e principal (redução do passivo). Este é um aspecto avançado, mas importante para uma imagem financeira completa.
  • Income:Salary (e/ou Income:Bonus, Income:Interest, etc.) – Para registrar contracheques, bônus, receita de juros, dividendos, etc. As contas de receita permitem ver seus ganhos totais de várias fontes. (Se seu contracheque já tem impostos descontados, você pode registrar o depósito líquido na conta corrente como receita, ou registrar o bruto e as retenções de impostos como despesa ou passivo – existem diferentes abordagens, mas muitos apenas registram o salário líquido como receita por simplicidade em livros pessoais.)
  • Expenses: Normalmente numerosas, divididas em categorias significativas para você. Por exemplo: Expenses:Housing:Rent, Expenses:Food:Groceries, Expenses:Food:DiningOut, Expenses:Utilities:Electricity, Expenses:Entertainment, Expenses:Travel, Expenses:Taxes, Expenses:Misc – quaisquer categorias que reflitam seus hábitos de gasto. Você pode ser tão granular ou geral quanto quiser. A hierarquia de contas ajuda a agregar (por exemplo, Expenses:Food totalizará tanto mercearia quanto refeições fora). A prática comum é ter uma hierarquia para grandes grupos (Moradia, Alimentação, Transporte, Saúde, etc.).
  • Equity:Opening-Balances – Usada para inicializar os saldos das contas quando você começa seu livro-razão (de modo que todos os ativos menos passivos igualem seu patrimônio líquido inicial registrado no patrimônio). Após o início, você também pode usar Equity:Retained-Earnings ou similar para representar o lucro líquido acumulado (embora em finanças pessoais, você normalmente apenas deixa a receita menos as despesas fluírem para o patrimônio líquido). As contas de patrimônio são menos visíveis no dia a dia, mas garantem que a equação contábil se equilibre.

Lógica: A configuração de finanças pessoais trata de capturar sua vida financeira em um único sistema coerente. Cada conta acima serve para separar diferentes tipos de finanças, para que você possa responder perguntas como "Quanto gastei com alimentação este mês?" (somando Expenses:Food:*), "Quanto de dívida ainda tenho?" (olhando as contas de passivo) ou "Qual é o meu patrimônio líquido?" (ativos menos passivos). Uma grande vantagem das partidas dobradas aqui é a precisão: por exemplo, quando você lança uma conta de mercearia de $100 no cartão de crédito, você registra como despesa e como aumento de passivo. Depois, quando você paga o cartão de crédito, registra uma transferência do seu banco para o cartão – isso quita o passivo, mas não conta a despesa de mercearia duas vezes (que já foi registrada). Uma armadilha comum sem partidas dobradas é tratar o pagamento do cartão de crédito como despesa em si, contando efetivamente os $100 duas vezes. O Beancount evita isso por design. Outra armadilha a evitar é não conciliar as contas: com o Beancount, você pode usar assertions de saldo ou a diretiva balance para garantir, por exemplo, que o saldo da sua conta corrente no livro-razão corresponda ao extrato bancário real. Isso detecta entradas faltantes ou duplicadas.

Recursos do Beancount a Destacar: Para finanças pessoais, as importações automatizadas são especialmente úteis devido ao volume de transações. Você pode usar o framework de importadores do Beancount ou scripts da comunidade para importar transações bancárias, extratos de cartão de crédito e até transações de investimento de fontes CSV, OFX ou API. Isso significa que você passa menos tempo digitando manualmente cada compra de café. As tags personalizadas são úteis para fatiar os dados de maneiras que as contas talvez não consigam. Por exemplo, marque todas as despesas relacionadas a férias com #vacation2025, independentemente de serem passagens, hotéis ou refeições – assim você pode consultar o custo total dessas férias facilmente. Ou marque certas despesas como #deductible se precisar acompanhar itens dedutíveis de impostos para referência futura. Você também pode marcar contas recorrentes (por exemplo, #monthly) para revisar todas as suas assinaturas e custos fixos anualmente. Metadados podem ser usados para anexar notas ou recibos (por exemplo, receipt: "path/to/file.jpg" para anotar que você tem uma imagem de recibo salva, ou category: "Work Expense" se estiver rastreando itens reembolsáveis). A flexibilidade das tags e metadados significa que você pode adaptar o sistema às suas necessidades pessoais de acompanhamento sem criar dezenas de contas extras.

Experimente o conversor antes de escrever um importador

Execute a exportação bancária do mês passado pelo conversor CSV para Beancount, ou um download .ofx, .qfx ou .qif pelo OFX & QIF para Beancount. Para a maioria dos livros pessoais isso é suficiente, e mostra a forma da entrada que um importador personalizado precisaria produzir.

Trecho de Exemplo de Razão para Finanças Pessoais​

Abaixo está um exemplo de trecho de um livro-razão Beancount pessoal capturando algumas transações típicas: uma despesa diária lançada em um cartão de crédito, uma conta recorrente paga pela conta corrente e uma contribuição para uma conta de investimento para aposentadoria. (Por brevidade, assumimos que uma configuração inicial foi feita para abrir as contas e registrar qualquer receita de salário; aqui focamos no lado dos gastos e da poupança.)

1970-01-01 open Assets:Bank:Checking
1970-01-01 open Liabilities:CreditCard:Visa
1970-01-01 open Expenses:Food:Coffee
1970-01-01 open Expenses:Housing:Rent
1970-01-01 open Assets:Investment:401k
 
; Daily spending example (coffee on a credit card)
2025-09-10 * "Starbucks Coffee" #daily
  Expenses:Food:Coffee       5.50 USD
  Liabilities:CreditCard:Visa   -5.50 USD
 
; Recurring monthly bill (rent paid from checking)
2025-09-01 * "Apartment Rent September" #recurring
  Expenses:Housing:Rent    1200 USD
  Assets:Bank:Checking    -1200 USD
 
; Retirement contribution (transfer from checking to 401k investment)
2025-09-15 * "401(k) Contribution" #retirement
  Assets:Investment:401k    500 USD
  Assets:Bank:Checking     -500 USD

Vamos interpretar essas transações:

  • Abertura de contas: Abrimos a conta corrente, uma conta de cartão de crédito Visa, uma conta de despesa de Café (como exemplo de uma subcategoria de despesas de Alimentação), uma conta de despesa de Aluguel e uma conta de investimento 401k. Em um livro-razão real, você abriria todas as contas que planeja usar (poupança, outras categorias de despesas, receita, etc.). Mantemos apenas o necessário para o trecho.
  • Despesa diária – café: Em 2025-09-10, uma compra de café de $5,50 é registrada. A despesa é categorizada em Expenses:Food:Coffee, e como foi paga com um cartão de crédito Visa, creditamos (aumentamos) Liabilities:CreditCard:Visa. A tag #daily é adicionada para indicar que este foi um item de gasto do dia a dia – talvez depois você queira filtrar todos os gastos discricionários diários. Observe que, após isso, a conta do cartão de crédito mostrará um saldo de $5,50 (ou seja, você deve $5,50 à Visa). Se você tivesse pago em dinheiro por este café, a transação em vez disso creditaria Assets:Cash (reduzindo o dinheiro que você tem em mãos). Se fosse uma compra no cartão de débito, creditaria Assets:Bank:Checking. A mecânica é semelhante, apenas com contas diferentes.
  • Conta recorrente – aluguel: Em 2025-09-01, registramos o pagamento do aluguel mensal de $1200. Isso sai da conta corrente (creditando Assets:Bank:Checking) e é categorizado como Expenses:Housing:Rent. Marcamos com #recurring para indicar que esta é uma conta recorrente. Em um livro-razão completo, você pode ter uma entrada como esta todos os meses. (O Beancount não tem um recurso integrado de transação recorrente automática, mas você pode conseguir isso com scripts ou simplesmente copiar e colar a cada mês. As tags ajudam a garantir depois que você não perdeu um mês ou a somar rapidamente o aluguel de um ano.) Alguns usuários usam o recurso de transação periódica por meio do framework de importadores do Beancount para gerá-las automaticamente, mas isso é um uso avançado além do escopo aqui. O importante é que esta transação mostra claramente para onde foi seu dinheiro – uma despesa de moradia – e seu saldo bancário reduzido. Uma armadilha a observar: se você divide despesas ou tem colegas de quarto, você pode pagar apenas parte do aluguel; nesse caso, você poderia dividir a transação na sua parte e na parte que outra pessoa paga (possivelmente registrando a outra parte como Income:Reimbursements se ela te pagar). Em nosso caso simples, pagamos o valor total.
  • Contribuição para aposentadoria: Em 2025-09-15, $500 são movidos da conta corrente para uma conta de investimento 401(k). Isso não é uma despesa, mas sim a transferência de ativos de uma forma (dinheiro) para outra (fundo de aposentadoria). A transação debita Assets:Investment:401k e credita Assets:Bank:Checking. Marcamos com #retirement para clareza. Após isso, o saldo da sua conta corrente cairá em 500, e o saldo da sua conta 401k no livro-razão aumentará pelo que quer que $500 representem (dependendo de como você acompanha os investimentos, você pode subsequentemente comprar cotas de fundos mútuos com esse dinheiro – isso seria outra transação na conta de investimento, por exemplo, comprando X cotas de um fundo a um preço Y, com o dinheiro saindo do ativo 401k). Em um livro-razão pessoal básico, você pode simplesmente tratar o 401k como uma conta poupança e atualizar seu saldo periodicamente ou registrar contribuições como esta e talvez usar cotações de preços para o crescimento. O importante é que esta transação é uma transferência, não uma despesa – está construindo seus ativos. Muitas ferramentas de orçamento contariam as contribuições para aposentadoria como "despesas" (já que saem da sua conta corrente), mas em termos contábeis, é apenas mover dinheiro para um bolso diferente. Essa distinção ajuda você a entender a taxa de poupança versus os gastos.

Para investimentos registrados como unidades de títulos suportados, o Live Prices pode manter cotações de avaliação em um livro-razão hospedado. Um saldo de aposentadoria apenas em dinheiro não pode obter valores de mercado de títulos a partir de um feed; registre as participações reais e mantenha seus custos de compra explícitos.

Se tivéssemos uma transação para pagar a fatura do cartão de crédito, ela se pareceria com uma transferência de dinheiro da Conta Corrente para o passivo do Cartão de Crédito (por exemplo, Liabilities:CreditCard:Visa 100 USD / Assets:Bank:Checking -100 USD). Isso reduziria o saldo do cartão de crédito de volta (talvez a zero, se você pagasse integralmente) e reduziria seu saldo bancário correspondentemente, sem efeito nas contas de despesa – porque você já registrou as despesas no momento da compra. Lembrar de lidar com cartões de crédito dessa forma é crucial para um acompanhamento preciso das finanças pessoais. Você pode marcar o pagamento também (alguns usam #cc-payment ou similar) ou incluir o período do extrato na narração para clareza.

Resumo: Um livro-razão de finanças pessoais no Beancount ajuda a impor disciplina e estrutura ao seu acompanhamento do dinheiro. Ao categorizar as transações com contas (e, opcionalmente, tags), você pode produzir relatórios perspicazes: gastos mensais por categoria, totais anuais, quanto você economizou, e assim por diante. A abordagem de partidas dobradas significa que cada dólar é contabilizado: se o saldo de uma conta diminui, ele foi para algum lugar (outra conta aumenta). Isso detecta erros e evita o problema comum de "dinheiro desaparecido" em ferramentas de acompanhamento mais simples. Com automação, você pode importar a maioria das transações e depois apenas revisá-las e classificá-las, tornando a manutenção bastante viável. Com o tempo, você constrói um diário financeiro abrangente – ele pode até lidar com coisas como dividir contas com amigos (usando contas de patrimônio ou contas a pagar/a receber), acompanhar a amortização de empréstimos ou o desempenho de investimentos, se você optar por expandir para essas áreas. Mesmo em seu nível mais básico (como mostrado no trecho), o Beancount oferece clareza sobre gastos diários, obrigações recorrentes e progresso em direção a objetivos de longo prazo (como poupança para aposentadoria). E, como é texto simples, você tem controle total: pode criar scripts, consultá-lo ou integrá-lo com outras ferramentas (como a interface web Fava para uma visão amigável). Em resumo, essa configuração transforma suas finanças pessoais em dados que você pode analisar e confiar, permanecendo simples o suficiente para não ser uma tarefa penosa.


Ao adaptar seu livro-razão Beancount à sua situação – seja você freelancer, gerindo uma pequena empresa ou administrando fundos pessoais – você obtém o benefício de uma abordagem sistemática de partidas dobradas para o acompanhamento financeiro, com a flexibilidade de um sistema de texto simples. Estas configurações de exemplo demonstram padrões centrais sobre os quais você pode construir. Conforme seu negócio cresce ou sua vida financeira fica mais complexa, você pode estender o plano de contas ou usar recursos avançados (como orçamentos, análise de variações ou tratamento de múltiplas moedas), conforme necessário. O ponto-chave é começar com uma estrutura limpa e lógica (como as mostradas) e registrar as transações de forma consistente. Com isso em vigor, o Beancount será um aliado poderoso para entender e gerenciar suas finanças, tanto em diversos setores quanto em cenários pessoais. Boa contabilidade!

Fonte: https://beancount.io/pt/docs/industry-specific-setups