← Voltar ao portfólio

Billing Engine

Um motor de pagamentos e billing agnóstico de provedor, cuidando de cobranças, assinaturas, splits e emissão automática de notas fiscais entre Asaas, Stripe e Starkbank.

Engenheiro Full-Stack · Arquitetura2021 — Presente
  • Stripe
  • Asaas
  • Starkbank
  • Node.js
  • PostgreSQL
  • Prisma
  • TypeScript
Capa do estudo de caso do Billing Engine

Desafio

Produtos em billing, fintech e provedores de internet precisavam de pagamentos, mas nenhum provedor sozinho cobria todos os casos — e amarrar a regra de negócio a um gateway significava reescrever tudo a cada mudança de preço, região ou provedor. Além disso, a compliance fiscal brasileira (NFS-e / NF-e) precisava ser automatizada, não manual.

Solução

Projetei uma camada de abstração agnóstica de provedor que modela cobranças, assinaturas e splits de forma independente de qualquer gateway, com adaptadores para Asaas, Stripe e Starkbank atrás de uma interface. A emissão automática de notas fiscais passa por Plugnotas e FocusNFe, e webhooks reconciliam o estado do provedor em uma única fonte de verdade.

Visão geral

O billing engine é a espinha dorsal de pagamentos compartilhada por vários produtos SaaS multi-tenant. Ele desacopla o que está sendo cobrado de como é cobrado, então um produto pode trocar ou combinar provedores sem tocar na regra de negócio.

Design

  • Núcleo agnóstico de provedor — cobranças, assinaturas e splits são modelados como entidades de domínio. Gateways (Asaas, Stripe, Starkbank) são adaptadores implementando um contrato comum.
  • Automação fiscal — a emissão de notas (NFS-e / NF-e) passa por Plugnotas e FocusNFe, disparada por eventos do ciclo de vida do pagamento.
  • Reconciliação — webhooks dos provedores alimentam uma máquina de estados que mantém o ledger interno consistente, com idempotência para sobreviver a retries e eventos duplicados.

Por que importa

Pagamento é onde correção não é negociável. O valor do engine está nas garantias chatas — idempotência, reconciliação e fonte única de verdade — que deixam todo produto em cima tratar billing como problema resolvido.

Impacto

  • Um domínio de billing, três provedores de pagamento intercambiáveis
  • Cobranças, assinaturas e splits prontos de fábrica
  • Emissão automática de NFS-e / NF-e via Plugnotas e FocusNFe
  • Reconciliação via webhooks em uma única fonte de verdade
  • Reutilizado em múltiplos produtos SaaS e verticais