2026-08-15
v0.20.0 — Carnê: venda parcelada no boleto, com o líquido na tela
O carnê chegou. Um produto, até 12 boletos mensais, sem cartão e sem análise de crédito.
Você liga o parcelado no produto e escolhe o número máximo de parcelas. No checkout o cliente vê a aba Carnê, escolhe em quantas vezes quer pagar e recebe o primeiro boleto na hora. Os outros chegam por e-mail 7 dias antes de cada vencimento — não emitimos os 12 de uma vez, porque um boleto emitido com 11 meses de antecedência é um boleto que o cliente perde.
Um produto de R$ 1.200,00 em 12x com fator 1,30 fica assim:
| Preço à vista | R$ 1.200,00 |
| Parcela | R$ 130,00 |
| Total do carnê | R$ 1.560,00 |
| Acréscimo | R$ 360,00 |
Desse acréscimo de R$ 360,00, a Garu fica com 25% e os outros 75% são seus. O parcelamento é seu produto, o risco é seu, e a maior parte do ganho também.
Ninguém garante um boleto. Se o cliente não pagar a parcela 7, ela simplesmente não entra. Não há estorno automático, não há seguro, não há chargeback a favor de ninguém. Você está dando crédito ao seu cliente, e o carnê existe para tornar isso possível — não para tornar isso seguro.
Por isso o checkout mostra tudo que o art. 52 do CDC exige antes da compra: valor à vista, valor total a prazo, valor de cada parcela, quantidade, acréscimo em reais e a taxa de juros ao mês e ao ano. Sem letra miúda.
Esta é a parte que mais nos importou acertar.
Quando uma parcela de R$ 130,00 é paga, não são R$ 130,00 que entram na sua conta. Saem a taxa da Garu, a fatia da Garu no acréscimo, a comissão do afiliado e a parte dos coprodutores. O que sobra é seu — e é esse número que a plataforma mostra, em "Você já recebeu".
A página do carnê agora abre a conta linha por linha, e traz um campo residual que só existe para uma coisa: se algum dia os pedaços não fecharem com o total, isso aparece na tela em vez de sumir dentro de um número que ninguém consegue conferir.
Na lista de Transações, um carnê aparece como uma venda, não como doze. Na página do cliente, "Pago pelo cliente" e "Seu líquido" são duas colunas separadas, porque são dois números diferentes e confundir os dois é caro.
Pix e boleto não têm estorno automático pela adquirente. Antes, pedir um devolvia erro e acabava ali. Agora o pedido vira um registro dentro da Garu: fica pendente, você resolve, e a plataforma acompanha. Se o estorno for parcial, a comissão do afiliado volta na proporção — antes voltava inteira, mesmo devolvendo metade.
Vieram juntas nesta versão:
@Cron são avaliados antes da configuração carregar. Toda rotina rodava no horário embutido no código, não no configurado.O carnê tem superfície pública em /api/v1: criar plano, consultar, listar parcelas, pedir estorno. Tudo em camelCase, com uuid como identificador e webhooks installment_plan.*. As ferramentas de MCP e os SDKs de Node e Flutter acompanham.