Garu

2026-08-15

v0.20.0 — Carnê: venda parcelada no boleto, com o líquido na tela

carneboleto-parceladocheckoutdashboardapiv1estornosafiliados

O carnê chegou. Um produto, até 12 boletos mensais, sem cartão e sem análise de crédito.

Como funciona

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 à vistaR$ 1.200,00
ParcelaR$ 130,00
Total do carnêR$ 1.560,00
AcréscimoR$ 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.

O risco é seu, e a gente fala isso na cara

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.

O painel mostra o seu líquido

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.

Pedidos de estorno de Pix e boleto

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.

Quatro correções de dinheiro

Vieram juntas nesta versão:

  • Comissão de afiliado sumia em venda por link. Não só no carnê: em toda venda feita por um link de afiliado. Quem indicou não recebia e não via a venda no painel.
  • Venda de R$ 349,00 no cartão cobrava R$ 453,72. Quem visitava a aba Carnê e voltava para o Cartão levava o número de parcelas junto, e a cobrança saía com ele.
  • Estorno parcial devolvia 100% da comissão. Devolver metade da venda tomava a comissão inteira do afiliado.
  • Horários das rotinas automáticas eram ignorados. As variáveis de ambiente que definem os horários nunca eram lidas — os @Cron são avaliados antes da configuração carregar. Toda rotina rodava no horário embutido no código, não no configurado.

Para quem integra

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.