Contabilidade para Programadores, Parte 2: A Equação Fundamental
Imagine as seguintes situações:
- João decidiu abrir uma empresa. Então, ele investiu R 20.000 para comprar matéria prima. No primeiro mês de operação, utilizou R 5.000 da matéria prima comprada e teve um faturamento de R 25.000 e tem R 10.000 de custos a pagar em salários em impostos.
- Você possui um computador que vale atualmente em torno de R 5.000 se você vendesse hoje. O computador lhe custou R 7.500 pois você comprou parcelado, e você já pagou um total de R 4.000 das parcelas. Além disso, você tem mais R 2.000 na conta bancária e R$ 1.500 de contas a pagar.
Ativos e passivos
Todas as pessoas, físicas ou jurídicas, geralmente são donas de algumas coisas e também geralmente devem algumas coisas.
Todas as coisas que possuímos são chamadas de "ativos" no mundo da contabilidade, e todas as coisas que devemos são chamadas de "passivos".
No primeiro exemplo acima, a empresa de João tem atualmente um total de R 40.000 em ativos e R 40.000 em passivos. No segundo exemplo, você teria um total de R 7.000 em ativos e R 7.000 em passivos - Eu sei, por enquanto isso não faz nenhum sentido, mas vou explicar em breve.
A equação fundamental da contabilidade
Na contabilidade, tudo deve possuir um equilíbrio. Pense na contabilidade como uma balança antiga que precisa estar sempre com os dois lados na mesma altura.
Esse equilíbrio é representado pela equação fundamental da contabilidade:
Ativo = Passivo + Patrimônio Líquido
Na contabilidade, tudo precisa estar equilibrado
O patrimônio líquido representa o quanto a empresa deve para os sócios, no caso de empresas, ou quanto valem todas as posses de uma pessoa física.
Algumas vezes podemos encontrar essa mesma conta expressa de um jeito um pouco diferente, mas que na verdade significa a mesma coisa: "Patrimônio Líquido = Ativo - Passivo", o que faz sentido, porque basicamente signica que o patrimônio de uma pessoa física ou jurídica é igual a tudo o que ela tem menos tudo o que ela deve.
Agora que sabemos que a equação fundamental da contabilidade exige um equilíbrio, vamos voltar aos 2 exemplos do começo do artigo e demonstrá-los com código. Vale lembrar que o ponto do código é demonstrar conceitos (não ligue para o fato das classes Ativo e Passivo não adicionarem nenhum novo dado ou comportamento).
// src/ativo_passivo.ts
import type { Dinheiro } from "./dinheiro";
export abstract class CoisaPrecificavel {
constructor(private _nome: string, private _valor: Dinheiro) {}
get nome() {
return this._nome;
}
get valor() {
return this._valor;
}
}
// Ativos são coisa precificáveis
export class Ativo extends CoisaPrecificavel {
constructor(nome: string, valor: Dinheiro) {
super(nome, valor);
}
}
// Passivos também
export class Passivo extends CoisaPrecificavel {
constructor(nome: string, valor: Dinheiro) {
super(nome, valor);
}
}
export function somar(itens: CoisaPrecificavel[]) {
return itens.reduce((total, item) => {
return total.adicionar(item.valor);
}, dinheiro("BRL", 0));
}
// test/exemplos.spec.ts
import { Ativo, Passivo, somar } from "../src/ativo_passivo";
import dinheiro from "../src/dinheiro";
test("Exemplo 1", () => {
// João decidiu abrir uma empresa.
// Então, ele investiu R$ 20.000 para comprar matéria prima.
// No primeiro mês de operação, utilizou R$ 5.000 da matéria prima comprada e teve um faturamento
// de R$ 25.000 e tem R$ 10.000 de custos a pagar em salários em impostos.
const ativo: Ativo[] = [
new Ativo("Matéria prima", dinheiro("BRL", 15_000_00)),
new Ativo("Faturamento", dinheiro("BRL", 25_000_00)),
];
const passivo: Passivo[] = [
new Passivo("Custos", dinheiro("BRL", 10_000_00)),
];
// O patrimônio líquido é um tipo de passivo porque deve ser devolvido aos donos
const patrimonioLiquido: Passivo[] = [
// O capital social faz parte do patrimônio líquido.
// Quando João decidiu abrir sua empresa, ele fez um investimento inicial de R$ 20.000.
// Isso compõe o capital social da empresa, e a empresa deve esse dinheiro ao dono.
// Se a empresa possui uma dívida com o dono, logo, a empresa tem R$ 20.000 de passivo.
new Passivo("Capital social", dinheiro("BRL", 20_000_00)),
// E o lucro (ou prejuízo) acumulado, é simplesmente a diferença entre o ativo e o passivo,
// e também deixa a equação equilibrada.
new Passivo("Lucros acumulados", dinheiro("BRL", 10_000_00)),
];
const ladoEsquerdoDaEquacao = somar(ativo);
const ladoDireitoDaEquacao = somar(passivo).adicionar(
somar(patrimonioLiquido)
);
expect(ladoEsquerdoDaEquacao.igualA(ladoDireitoDaEquacao)).toBe(true);
});
test("Exemplo 2", () => {
// Você possui um computador que vale atualmente em torno de R$ 5.000 se você vendesse hoje.
// O computador lhe custou R$ 7.500 pois você comprou parcelado, e você já pagou um total de
// R$ 4.000 das parcelas. Além disso, você tem mais R$ 2.000 na conta bancária e R$ 1.500 de
// contas a pagar.
const ativo: Ativo[] = [
new Ativo("Computador", dinheiro("BRL", 5_000_00)),
new Ativo("Dinheiro na conta bancária", dinheiro("BRL", 2_000_00)),
];
const passivo: Passivo[] = [
new Passivo(
"Parcelas pendentes do computador",
dinheiro("BRL", 3_500_00)
),
new Passivo("Contas a pagar", dinheiro("BRL", 1_500_00)),
];
// No caso da pessoa física, o patrimônio líquido é quanto vale tudo o que você tem
// menos suas dívidas
const patrimonioLiquido: Passivo[] = [
new Passivo("O que você realmente tem", dinheiro("BRL", 2_000_00)),
];
const ladoEsquerdoDaEquacao = somar(ativo);
const ladoDireitoDaEquacao = somar(passivo).adicionar(
somar(patrimonioLiquido)
);
expect(ladoEsquerdoDaEquacao.igualA(ladoDireitoDaEquacao)).toBe(true);
});
Você pode encontrar o código fonte aqui.
Por hoje é isso. Em breve posto o artigo número 3. Até mais!