Visão Geral
A partir da v0.5.0, você pode agendar cobranças para um cliente já cadastrado. A Garu cuida do resto:- E-mail para o cliente no dia do vencimento, com um link de pagamento já com PIX ou Boleto pronto.
- Alertas para o time financeiro a partir de D+1, D+2 e D+3 se a cobrança ficar em atraso.
- Estado da cobrança visível no dashboard (
Próximas,Vencidas,Pausadas,Concluídas). - API completa para automatizar o fluxo via SDK ou MCP.
Onde fica: Acesse
/cobrancas-agendadas no menu lateral do dashboard. Pela API, use os endpoints abaixo (ou o SDK Node @garuhq/node 0.5+).O que está suportado nesta versão
| Recurso | Status |
|---|---|
Cobranças avulsas (one_time) | ✓ |
| PIX e Boleto | ✓ |
Cobranças recorrentes (recurring) com Pix Automático | ✓ |
| Cartão | Em uma versão futura (precisa de tokenização do cliente) |
Modelo de dados
Ciclo de vida
Dia do vencimento (D)
A Garu envia e-mail ao cliente com o link de pagamento. Status vira
due_today.Cobrança em atraso
A Garu manda lembretes para o time financeiro em D+1, D+2 e D+3, e dispara o webhook
scheduled_charge.overdue em cada estágio.Agendando via dashboard
Preencha o wizard
Cliente → Produto (opcional) → Valor + descrição + vencimento → Métodos (PIX/Boleto) → Revisão.
Agendando via API
Inclua sua chave de API no headerAuthorization de todas as requisições:
Criar cobrança
Cobrança recorrente com Pix Automático
Para uma série recorrente debitada automaticamente, usetype: "recurring" com methods: ["pix_automatic"]. O cliente autoriza a recorrência uma vez no app do banco e os ciclos seguintes caem sozinhos — veja o guia do Pix Automático.
Listar cobranças
Buscar uma cobrança (com timeline e transações)
Ações no ciclo de vida
| Ação | Endpoint | Status permitidos |
|---|---|---|
| Cobrar agora | POST /api/scheduled-charges/{id}/charge-now | scheduled / due_today |
| Adiar | POST /api/scheduled-charges/{id}/postpone | scheduled / due_today / overdue / paused |
| Pausar | POST /api/scheduled-charges/{id}/pause | scheduled / due_today / overdue |
| Retomar | POST /api/scheduled-charges/{id}/resume | paused |
| Marcar como paga | POST /api/scheduled-charges/{id}/mark-paid | due_today / overdue |
Cobrar agora (sem esperar o vencimento)
Quer disparar a cobrança e o e-mail ao cliente na hora, antes dodueDate? Use charge-now. Roda o mesmo fluxo do cron diário, só que antecipado, e é idempotente por ciclo — se o ciclo já foi disparado, volta already_sent e não cobra de novo.
outcome (dispatched / already_sent / not_sent / failed) e uma message em pt-BR pronta para exibir. Veja Cobrar agora para todos os resultados e motivos.
Webhooks emitidos
Configure um endpoint em Configurações → Desenvolvedores → Webhooks para receber:| Evento | Quando |
|---|---|
scheduled_charge.created | Cobrança agendada com sucesso |
scheduled_charge.postponed | Data alterada |
scheduled_charge.paused | Cobrança pausada |
scheduled_charge.resumed | Cobrança retomada |
scheduled_charge.charged | E-mail D-day enviado ao cliente |
scheduled_charge.overdue | Atrasou; emitido em D+1, D+2 e D+3 |
scheduled_charge.paid | Pagamento confirmado |
scheduled_charge.failed | Pagamento recusado |
Notificações para o time
Quando uma cobrança fica em atraso, a Garu notifica os membros do time que tenham pelo menos uma das permissões:transaction:viewbilling:viewadmin:view
Permissões
| Ação | Permissão |
|---|---|
| Listar / ver cobranças | scheduled_charge:view |
| Criar cobrança | scheduled_charge:create |
| Cobrar agora / adiar / pausar / retomar / marcar como paga | scheduled_charge:edit |
| Cancelar cobrança | scheduled_charge:delete |
- Owner / Administrator: tudo.
- Support: ver, editar, cancelar (não cria).
- Developer / Analyst / View Only: apenas ver.
SDK e MCP
- Node SDK: Cobranças agendadas no
@garuhq/node. - MCP server: Tools de cobranças no Garu MCP.
Próximos passos
- Pix Automático em cobranças recorrentes (já disponível com
type: "recurring"). - Cartão de crédito como método agendável (após tokenização do cliente).
- Portal do cliente em
/minha-areapara o próprio cliente acompanhar e pagar cobranças sem login.