Faturação para desenvolvedores indie de jogos: do milestone Steam à fatura para publisher

Lançar um jogo indie é programar três anos numa cadeira que dói, animar pixel a pixel uma personagem que ninguém ainda viu, fechar contrato com publisher que pede milestones com cronograma rígido, e descobrir no fim do mês que a Steam reteve impostos na origem que ninguém te avisou. A criatividade está no código e no design. A sobrevivência financeira está na administração que poucos estúdios indie tratam com seriedade desde o primeiro dia.

Este artigo é para programadores solo, duplas e pequenos estúdios indie de jogos, em qualquer engine — Unity, Godot, Unreal, Construct, próprio motor. Vai funcionar para quem publica direto na Steam, itch.io, App Store e Google Play, e para quem fecha contrato com publisher para distribuição assistida.

Por que faturar jogos indie é um caso à parte

A receita chega por vários canais: vendas diretas em loja (Steam, App Store, Google Play, itch), royalties de publisher, pagamentos por milestone de contrato, work-for-hire de assets, financiamento via crowdfunding, bolsas culturais e patrocínio. Cada canal tem moeda, periodicidade e regime fiscal próprios.

A Steam paga em dólar mensalmente, com retenção de imposto americano (W-8BEN se você fizer o tratado de bitributação), depósito em conta brasileira ou europeia. A Apple paga em mais de cinquenta moedas locais. Um publisher de Munique paga em euro por milestone com fatura formal. Um financiador via Kickstarter recebe em dólar e repassa convertido. O Brasil quer ver tudo isso na declaração anual. Portugal quer ver mensalmente no SAF-T.

As principais dores de cabeça

A receita Steam que cai e ninguém sabe declarar. O desenvolvedor brasileiro recebe USD na conta, e o contador pergunta “que receita é essa?”. Sem documento que registe a origem e o câmbio, fica ar.

O contrato de publisher com milestones. “Milestone 1: protótipo jogável, USD 15.000. Milestone 2: alpha, USD 20.000. Milestone 3: gold, USD 25.000”. Cada milestone tem que ter fatura formal emitida no momento da entrega aprovada. Sem isso, o publisher não solta o pagamento.

Work-for-hire de assets. O programador indie faz três meses de gameplay programming para um estúdio maior por contrato. É serviço, exige nota fiscal, e o regime brasileiro pede emissão municipal.

A Apple e Google retêm imposto na origem. Quando a fatura chega no Brasil, o valor líquido é menor. Como conciliar?

Como o InvoiceFlow resolve isso

Múltiplos perfis para receita diferenciada

Perfil PF para vendas diretas Steam (declaração no Carnê-Leão), perfil PJ Simples Nacional para contratos com publisher, perfil terceiro para coletivo de jogos. Cada um com numeração e dados bancários.

Lista de faturas do Invoice Flow app de um estúdio de jogos indie — marcos de vertical slice e alpha pagos, fatura de beta enviada, gold master em rascunho e um pagamento de publisher em JPY
Vertical slice pago, alpha pago, beta faturado — a build sai quando o dinheiro entra.

Multi-moeda bloqueada por cliente

Publisher de Munique fica em euro. Cliente americano work-for-hire em dólar. Steam em dólar. App Store em moeda local. Sem confusão.

Editor de faturas do Invoice Flow app de um desenvolvedor de jogos — licença comercial de módulo de engine, licença de trilha sonora de 12 faixas e horas de suporte de integração em EUR
Módulo de engine, direitos de trilha, horas de integração — receita de licenciamento, documentada.

Faturas por milestone com proforma

Cada milestone do contrato é uma proforma quando entregue para aprovação. Aprovado o entregável, vira fatura formal. O publisher acompanha o histórico.

Lista de clientes do Invoice Flow app de um desenvolvedor de jogos indie — um estúdio dos EUA em USD, um estúdio da UE em EUR e uma editora japonesa em JPY
EUA, UE, Japão — cada estúdio faturado na sua própria moeda.

Recorrências para royalties mensais

Steam paga todo dia 30. Crie uma recorrência mensal de fatura interna de royalties para manter o registo organizado. Quando o publisher paga adiantamento e depois cobra recoupment, a recorrência ajuda a separar.

Predefinições de cláusulas

“Pagamento em até 30 dias após aprovação do milestone, em USD via wire transfer, taxas bancárias por conta do contratante.” Defina uma vez, aplique sempre.

Modelos de email

Envio de proposta de milestone, lembrete de pagamento em atraso, segunda via, recibo de royalty mensal. Tudo automatizado.

Modelos de PDF profissionais

Onze modelos prontos. Para indie game, o modelo limpo com a logo do estúdio funciona melhor do que algo carregado.

Backup e exportação

Histórico de receita por canal, exportável em CSV para o contador brasileiro fazer Carnê-Leão e ajustar IRPF, ou para o contabilista português alimentar o SAF-T.

Caso real

Catarina mantém um estúdio de uma pessoa em Coimbra, lançou um roguelike pequeno no Steam em 2024. Receita mensal entre 800 e 3.500 euros, mais um contrato de work-for-hire com publisher alemão que paga 6.000 euros por milestone trimestral.

Antes usava planilha. Misturou receitas, deixou de declarar uma transferência, levou ofício da AT. Hoje usa o app com dois perfis (recibo verde para work-for-hire, e categoria B própria para Steam), com cada cliente em moeda configurada, e o contabilista recebe o export mensal no primeiro dia útil.

Felipe, em Salvador, programa em Godot, tem um jogo na Google Play com 80 mil downloads. Receita mensal de Google Ads cai em dólar via parceiro. Configurou um perfil MEI específico para essa receita.

Fluxo passo a passo

Configure perfis: PF/MEI/microempresa conforme a sua realidade. Registe cada canal de receita como um cliente (Steam = cliente, Apple = cliente, publisher = cliente, work-for-hire = cliente individual). Para contratos de publisher, monte cronograma de milestones com proforma para cada entrega. Para royalties de loja, crie recorrência mensal interna para registar a receita do mês. Exporte CSV todo mês para contabilista. Mantenha backup no Drive.

Erros comuns

Não declarar receita Steam por achar que “imposto já foi retido”. O Brasil não isenta.

Misturar receita PF e PJ no mesmo perfil.

Fazer milestone sem fatura formal. Publisher trava o pagamento.

Não fazer W-8BEN na Steam. Você paga 30% em vez de 0% nos EUA.

Esquecer de converter USD para BRL no câmbio do dia do recebimento na hora de declarar.

Começar hoje

Baixe o InvoiceFlow, crie um perfil para cada regime que você precisa, registe cada canal de receita como cliente em moeda própria, e monte um modelo de proforma para milestones de publisher. A primeira reconciliação de fim de mês já vai ser três vezes mais rápida.