Despesas Acumuladas no Beancount: Um Guia Prático (com exemplos de ledger copy-paste)
Despesas acumuladas parecem abstratas até que os fechamentos de fim de mês comecem a se acumular. Elas são um alicerce da contabilidade de competência correta, garantindo que seus relatórios financeiros reflitam a realidade econômica, não apenas quando o dinheiro troca de mãos. Aqui está um passo‑a‑passo claro, focado no Beancount, do que são, por que importam e exatamente como lançá‑las, revertê‑las e relatá‑las no seu ledger de texto simples.
TL;DR ⚡
- Despesas acumuladas são custos que você incorreu neste período, mas ainda não pagou. Elas são registradas como passivo até que o dinheiro saia.
- No Beancount, isso é simples: você debita uma conta
Expenses:
e credita uma contaLiabilities:Accrued:
. Depois, limpa o passivo quando paga.- Para relatar, você pode ver o que deve em uma data específica executando um
bean-query
comCLOSE ON
eCLEAR
para obter um instantâneo limpo do balanço patrimonial.
O que é uma Despesa Acumulada?
Uma despesa acumulada é um custo que a empresa já incorreu, mas ainda não pagou. Ela é registrada quando o serviço é recebido ou o custo é incorrido, mesmo que a fatura ainda não tenha chegado ou o pagamento ainda não seja devido. Essa prática segue o princípio da competência da contabilidade de competência, que determina que as despesas devem ser registradas no mesmo período das receitas que ajudaram a gerar.
Exemplos comuns incluem:
- Salários de funcionários ao final de um mês, mas pagos no próximo.
- Utilidades (energia, água) usadas em dezembro, mas que só serão faturadas em janeiro.
- Juros de um empréstimo que se acumularam ao longo do mês, mas ainda não foram retirados da sua conta.
Ao registrar esses custos quando ocorrem, você obtém uma imagem muito mais fiel do desempenho financeiro da sua empresa naquele período.
Como o Beancount Enxerga Isso (em 30 segundos)
Beancount é um sistema de contabilidade de texto simples e de partida dobrada. Tudo é uma diretiva ou transação datada em um arquivo de texto. O sistema se baseia em cinco tipos de contas principais: Assets, Liabilities, Equity, Income e Expenses.
As entradas são sempre ordenadas por data. Um detalhe importante é que as asserções balance
são verificadas antes das transações do mesmo dia serem processadas. Isso é crucial ao colocar verificações e lançamentos de reversão.
Por fim, a linguagem bean-query
oferece uma forma poderosa, semelhante ao SQL, de gerar relatórios. Com operadores como OPEN ON
, CLOSE ON
e CLEAR
, você pode criar visualizações precisas “as‑of” para demonstrações financeiras.
Seu Plano de Contas (Sugestão)
Um plano de contas limpo e hierárquico é seu melhor amigo. Para despesas acumuladas, a estrutura é direta. Você precisará de:
- Uma conta de despesa: por exemplo,
Expenses:Utilities
,Expenses:Payroll:Wages
- Uma conta de passivo correspondente: por exemplo,
Liabilities:Accrued:Utilities
,Liabilities:Accrued:Payroll
- Sua conta de caixa: por exemplo,
Assets:Bank:Checking
Beancount impõe os cinco tipos de conta de nível superior. Manter os nomes das contas organizados facilita consultas e relatórios futuros.
O Padrão Central (Sem Plugin, Sem Mágica)
Esta é a forma mais direta de lidar com acumulações no Beancount. Envolve duas etapas: acumular a despesa no fim do mês e limpar o passivo quando pagar.
Etapa 1: Acumular a Despesa no Fim do Mês
No último dia do período, registre a despesa e crie o passivo.
2025-02-28 * "Acumular eletricidade de fevereiro" #accrual
Expenses:Utilities 120.00 USD
Liabilities:Accrued:Utilities
Etapa 2: Limpar a Acumulação Quando Pagar
Quando a conta chega e você paga, não toca novamente a conta de despesa. Em vez disso, debita a conta de passivo para zerá‑la.
2025-03-05 * "Pagar eletricidade de fev – City Power"
Liabilities:Accrued:Utilities 120.00 USD
Assets:Bank:Checking
Esta é a abordagem mais limpa para equipes pequenas. Ela coloca a despesa corretamente em fevereiro e garante que você não a contabilize duas vezes em março. Observe que, no Beancount, deixar um valor em branco permite que o sistema balanceie a transação automaticamente.
Alternativa: Lançamento de Reversão no Dia 1
Se você prefere o estilo clássico de “auto‑reversão”, pode postar o oposto do lançamento de acumulação no primeiro dia do mês seguinte. Depois, registra a fatura real do fornecedor na conta de despesa como de costume.
Etapa 1: Acumular no Fim do Mês (igual ao anterior)
2025-02-28 * "Acumular eletricidade de fevereiro" #accrual
Expenses:Utilities 120.00 USD
Liabilities:Accrued:Utilities
Etapa 2: Reverter no Primeiro Dia do Mês Seguinte
2025-03-01 * "Reverter acumulação de eletricidade de fev" #reversal
Liabilities:Accrued:Utilities 120.00 USD
Expenses:Utilities
Etapa 3: Registrar o Pagamento Normalmente
2025-03-05 * "City Power – fatura de fevereiro"
Expenses:Utilities 120.00 USD
Assets:Bank:Checking
Atenção às verificações: Lembre‑se de que as asserções balance
são avaliadas antes das transações do mesmo dia. Se quiser conferir o saldo da conta Liabilities:Accrued:Utilities
, coloque a asserção em 2025-02-28
para confirmar a acumulação ou em 2025-03-01
depois da reversão para confirmar que está zero. Colocá‑la antes da reversão em 2025-03-01
causará uma falha falsa.
Seis Acumulações Comuns (Padrões Copy‑Paste) 📋
Aqui estão alguns exemplos prontos para uso das acumulações mais frequentes em negócios.
1. Aluguel Ainda Não Faturado
2025-01-31 * "Acumular aluguel de janeiro" #accrual
Expenses:Rent 3000.00 USD
Liabilities:Accrued:Rent
2. Salários Ganhos mas Não Pagos
2025-03-31 * "Acumular salários de março" #accrual
Expenses:Payroll:Wages 8500.00 USD
Liabilities:Accrued:Payroll
3. Pagamento de Férias (PTO) Ganho
2025-03-31 * "Acumular PTO ganho em março" #accrual
Expenses:Payroll:PTO 900.00 USD
Liabilities:Accrued:Payroll
4. Juros Acumulados sobre um Empréstimo
2025-02-29 * "Acumular juros mensais do empréstimo" #accrual
Expenses:Interest 210.00 USD
Liabilities:Accrued:Interest
5. Honorários Profissionais (Auditoria/Legal)
2025-12-31 * "Acumular honorários de auditoria de fim de ano" #accrual
Expenses:Professional:Audit 4200.00 USD
Liabilities:Accrued:Professional
6. Utilidades Usadas mas Não Faturadas
2025-04-30 * "Acumular utilidades de abril" #accrual
Expenses:Utilities 95.00 USD
Liabilities:Accrued:Utilities
Relatórios: “O que devo em determinada data?”
bean-query
é sua ferramenta para obter respostas. Veja como obter um instantâneo adequado do balanço patrimonial das suas despesas acumuladas.
Obter Todos os Saldo de Passivos Acumulados no Final do Período
Esta consulta devolve o saldo de cada conta de passivo acumulado em 31 de março de 2025.
bean-query main.beancount '
SELECT account, UNITS(SUM(position)) AS balance
FROM OPEN ON 2025-01-01 CLOSE ON 2025-04-01 CLEAR
WHERE account "^Liabilities:Accrued"
GROUP BY 1
ORDER BY 1;
'
OPEN ON
define os saldos iniciais no início do período.CLOSE ON
trunca as transações antes desta data (é exclusivo). Por isso usamos2025-04-01
para obter dados até e incluindo2025-03-31
.CLEAR
zera Receitas e Despesas, proporcionando uma visão limpa do balanço (Ativos, Passivos, Patrimônio Líquido).
Ver um Registro de Todos os Lançamentos de Acumulação
Se quiser ver o histórico bruto das transações nas suas contas de acumulação:
bean-query main.beancount '
SELECT date, payee, narration, position
WHERE account "^Liabilities:Accrued"
ORDER BY date;
'
Obter um Total Único de Todas as Acumulações
Para um resumo rápido do total que você deve:
bean-query main.beancount '
SELECT UNITS(SUM(position)) AS total_accruals
FROM OPEN ON 2025-01-01 CLOSE ON 2025-04-01 CLEAR
WHERE account "^Liabilities:Accrued";
'
Controles & “Pegadinhas” Específicas do Beancount
- Timing das Asserções de Saldo: Como mencionado, as asserções verificam o saldo no início do dia.
2025-03-01 balance ...
roda antes de qualquer transação em2025-03-01
. Planeje‑se adequadamente. - Nomeação e Hierarquia: Uma árvore organizada como
Liabilities:Accrued:*
não serve apenas à estética. Ela simplifica suas consultas e torna seus relatórios instantaneamente compreensíveis. - Uso Cauteloso do Pad: A diretiva
pad
pode corrigir saldos de abertura, mas evite usá‑la para “consertar” acumulações recorrentes. Entradas explícitas garantem trilha de auditoria clara. - Relatórios “As‑Of”: Para instantâneos de balanço, prefira sempre
OPEN ... CLOSE ... CLEAR
nobean-query
. Isso impede que contas de receita e despesa contaminem seus totais de passivo.
Pré‑pago vs. Acumulado (Contraste Rápido)
É fácil confundir os dois. Eles são imagens‑espelho:
- Despesa Acumulada: Serviço consumido agora, dinheiro pago depois. Cria um passivo.
- Despesa Pré‑paga: Dinheiro pago agora, serviço consumido depois. Cria um ativo.
A lógica contábil é a mesma no Beancount; apenas as contas mudam (Assets:Prepaid:*
vs. Liabilities:Accrued:*
).
Modelo Pronto (Início do Arquivo)
Aqui estão as diretivas open
que você precisará para os exemplos usados neste post. Adicione‑as ao topo do seu arquivo de ledger uma única vez.
; --- Accounts (open once) ---
2025-01-01 open Assets:Bank:Checking
2025-01-01 open Expenses:Utilities
2025-01-01 open Expenses:Payroll:Wages
2025-01-01 open Expenses:Interest
2025-01-01 open Expenses:Professional:Audit
2025-01-01 open Liabilities:Accrued:Utilities
2025-01-01 open Liabilities:Accrued:Payroll
2025-01-01 open Liabilities:Accrued:Interest
2025-01-01 open Liabilities:Accrued:Professional
Notas Finais
Se você mantém seus livros em caixa, não lançará acumulações — as despesas são registradas apenas quando pagas. Se operar em competência, usar os padrões acima é essencial para combinar custos ao período em que o serviço foi consumido.
Os exemplos aqui fornecem orientação educativa geral. Consulte sempre seu contador para tratamentos específicos de setor, especialmente em relação a bônus, impostos sobre folha de pagamento e limites de capitalização.