Pular para o conteúdo principal

Uma postagem marcado com "fluxo de caixa"

Ver todas as tags

Criando e Rastreando Faturas com o Beancount

· 6 min de leitura
Mike Thrift
Mike Thrift
Marketing Manager

Um modelo em texto simples, um fluxo de trabalho repetível e uma única consulta para “Quem ainda me deve?”


2022-02-12-crafting-tracking-invoices-with-beancount

O faturamento pode parecer uma tarefa árdua, presa entre o trabalho que você concluiu e o pagamento que está aguardando. Mas um bom processo de faturamento é a espinha dorsal de um fluxo de caixa saudável. Ele tem dupla função: informa claramente aos seus clientes o que eles devem e quando, e alimenta seu sistema de contabilidade com os fatos incontestáveis de que ele precisa.

Embora aplicativos SaaS dedicados possam enviar PDFs sofisticados e automatizados, eles geralmente vêm com taxas mensais e bloqueiam seus dados em um silo proprietário. Uma abordagem leve em texto simples usando o Beancount oferece uma alternativa poderosa. Você pode transformar cada fatura em um conjunto claro de lançamentos contábeis, dando a você todos os benefícios do controle de versão, metadados poderosos e consultas instantâneas - sem necessidade de assinatura.


A Fatura Minimamente Viável (Campos que Você Nunca Deve Ignorar)

Antes de tocar em seu livro-razão, você precisa de uma fatura profissional. O formato pode ser simples, mas o conteúdo deve ser preciso. Esses campos, emprestados da prática comprovada de pequenas empresas, são inegociáveis.

  • Detalhes do vendedor: Nome da sua empresa e endereço físico.
  • Detalhes do cliente: Nome do seu cliente e (idealmente) o endereço dele.
  • Número da fatura: Um ID sequencial exclusivo que nunca é reutilizado. FAT-045 segue FAT-044.
  • Datas de emissão e vencimento: Indique claramente quando a fatura foi emitida e quando o pagamento é esperado.
  • Itens da linha: Uma descrição clara dos serviços ou produtos, juntamente com a quantidade, taxa e o total da linha.
  • Subtotal, imposto e total: Mostre a matemática para que o cliente possa acompanhá-la facilmente.
  • Observações opcionais: Um local para um agradecimento, instruções de transferência bancária ou um número de ordem de compra fornecido pelo cliente.

Para você começar, criamos um conjunto de modelos prontos para editar que incluem todos esses campos. As versões de planilha até pré-calculam os totais para você.

Obtenha nossos modelos aqui: beancount.io/invoice‑templates (Disponível nos formatos Google Docs, Word, Planilhas, Excel e PDF)


Registre a Fatura em Seu Livro-Razão

Depois de enviar o PDF da fatura para o seu cliente, você deve registrá-la no Beancount. Esta é uma etapa crucial que reconhece a receita quando ela é ganha, não apenas quando é paga. O processo envolve duas transações distintas.

1. Quando você emite a fatura:

Você cria uma transação que move o valor total da sua conta Receita para Ativo:Contas a Receber. Isso cria um IOU digital em seus livros.

; 2025‑07‑21 Fatura #045  Sprint de design web para Acme Corp.
2025-07-21 * "Acme Corp" "FAT-045 Sprint de design web"
Ativo:ContasReceber 3500.00 USD ; vencimento:2025-08-04
Receita:Design:Web
id_fatura: "FAT-045"
email_contato: "ap@acme.example"
link: "docs/faturas/2025-07-21_Acme_FAT-045.pdf"

Aqui, você debita Contas a Receber e credita sua conta Receita. Observe os metadados ricos: a data de vencimento, um id_fatura exclusivo e até um link: direto para o PDF que você enviou.

2. Quando o cliente paga:

Quando o dinheiro chega à sua conta bancária, você registra uma segunda transação para "fechar" o IOU. Isso move o saldo de Contas a Receber para sua conta corrente.

2025-08-01 * "Acme Corp" "Pagamento FAT-045"
Ativo:Banco:ContaCorrente 3500.00 USD
Ativo:ContasReceber
id_fatura: "FAT-045"

O saldo para FAT-045 em Ativo:Contas a Receber agora é zero e seus livros estão perfeitamente balanceados.

Anexe o PDF: A chave de metadados link: é especialmente poderosa quando usada com o Fava, a interface web do Beancount. O Fava renderizará um link clicável diretamente na visualização da transação, para que o documento de origem nunca esteja a mais de um clique de distância. Este fluxo de trabalho foi previsto já em 2016 em uma solicitação de recurso (GitHub).


Uma Consulta para Listar Todas as Faturas em Aberto

Então, quem ainda lhe deve dinheiro? Com este sistema, você não precisa procurar em e-mails ou planilhas. Você só precisa de uma consulta simples.

Salve o seguinte como um arquivo chamado faturas-em-aberto.sql:

SELECT
meta('id_fatura') AS id,
beneficiario,
descricao,
data,
number(saldo) AS pendente
WHERE
conta = "Ativo:ContasReceber"
AND saldo != 0
ORDER BY
data;

Agora, execute-o na sua linha de comando:

bean-query books.beancount faturas-em-aberto.sql

Em segundos, você obterá um relatório de envelhecimento limpo e atualizado de todas as faturas pendentes, mostrando o ID da fatura, cliente, data de emissão e valor devido. Nenhum software extra necessário.


Automatize o Trabalho Pesado

A beleza do texto simples é a capacidade de script. Você pode automatizar as partes tediosas deste fluxo de trabalho.

  • Modelo + Pandoc = PDF: Mantenha seu modelo de fatura em Markdown. Um pequeno script Python pode preencher as variáveis (nome do cliente, itens de linha, número da fatura) e a ferramenta de linha de comando Pandoc pode convertê-lo instantaneamente em um PDF profissional.
  • Git Pre-commit Hook: Se você armazena seu livro-razão no Git, um gancho de pré-commit simples pode executar verificações antes de salvar seu trabalho. Ele pode verificar se cada novo id_fatura é único, se os lançamentos da transação estão zerados e se o arquivo referenciado nos metadados link: realmente existe.
  • Cron Job: Configure uma tarefa agendada (um cron job) para executar sua consulta faturas-em-aberto.sql todas as noites e enviar o resumo por e-mail para você. Você começará cada dia sabendo exatamente quem precisa de um lembrete amigável.

Uma Ressalva Realista

O Beancount é uma ferramenta de contabilidade, não um serviço de faturamento. Ele não enviará lembretes de pagamento automaticamente para seus clientes nem processará os pagamentos com cartão de crédito. O fluxo de trabalho é: você cria e envia a fatura usando o método escolhido (como os modelos acima) e, em seguida, registra os lançamentos contábeis em seu livro-razão.

Para a maioria dos freelancers e pequenas empresas, esta etapa manual é um pequeno preço a pagar por um sistema de contabilidade à prova de balas, auditável e gratuito que você possui e controla completamente (beancount.io).


Próximos Passos

Pronto para assumir o controle do seu faturamento? Veja como começar.

  1. Baixe um modelo e use-o para criar sua próxima fatura real, certificando-se de usar um número de fatura sequencial.
  2. Armazene seus PDFs enviados em uma pasta dedicada como docs/faturas/ e use a chave de metadados link: em sua transação Beancount para referenciá-los.
  3. Salve a consulta faturas-em-aberto.sql e torne sua execução parte da sua revisão financeira semanal.

A contabilidade em texto simples não significa abrir mão do refinamento ou do controle - significa apenas que o banco de dados pode ser pesquisado com grep. Com um modelo simples e os trechos acima, você receberá mais rápido e manterá seus livros imaculados.