Templates e variáveis
Templates são as mensagens que as etapas da régua enviam. Cada template pertence a um canal (e-mail, SMS ou WhatsApp), tem uma categoria, um tom e um corpo com variáveis que o motor substitui pelos dados reais da cobrança na hora do envio.

O editor: texto puro e modo visual
O corpo do template tem dois modos, e a diferença é por canal:
- SMS e WhatsApp são sempre texto puro — o que você digita é o que sai.
- E-mail ganha um seletor Texto / Visual: no modo visual, um editor rich-text formata o corpo com títulos, negrito/itálico/sublinhado, listas, citações, links e alinhamento — sem escrever HTML. Um e-mail antigo escrito como texto continua abrindo em texto; um corpo HTML abre direto no modo visual.
Duas formas de inserir variáveis sem digitar errado: o painel de variáveis ao lado do formulário (clique para inserir na posição do cursor) e, no modo visual, o botão Inserir variável na barra do próprio editor. A aba Preview mostra a mensagem interpolada com dados de exemplo — inclusive o assunto do e-mail.
:::note Sanitização no servidor
O corpo HTML do e-mail é sanitizado no salvamento, no servidor: só atravessam as tags e atributos de formatação que o editor produz (links com http/https/mailto/tel; alinhamento de texto). Scripts, iframes e afins são descartados — mesmo que alguém envie HTML malicioso direto pela API. Template de texto puro é salvo byte a byte, sem transformação.
:::
Categorias
| Categoria | Uso típico |
|---|---|
Lembrete (reminder) | Antes do vencimento |
Cobrança (overdue) | Depois do vencimento |
Negociação (negotiation) | Proposta de acordo |
Aviso de Negativação (negativation_warning) | Comunicado prévio exigido antes de negativar |
Aviso de Protesto (protest_warning) | Comunicado prévio ao protesto |
Confirmação de Pagamento (payment_confirmation) | Pós-pagamento |
E-mails têm assunto e corpo; SMS/WhatsApp só corpo. Assunto e corpo aceitam variáveis.
Sintaxe das variáveis
Escreva a variável entre chaves duplas; opcionalmente, aplique um formatador com |:
Olá {{ person.name }}, sua fatura {{ charge.documentNumber }} de
{{ charge.currentAmount | currency }} venceu em {{ charge.dueDate | date }}.
Pague pelo PIX: {{ charge.pixEmv }}
Variável sem valor no cadastro vira texto vazio (a mensagem não quebra).
Variáveis disponíveis
Cliente (person.)
| Variável | Conteúdo |
|---|---|
{{ person.name }} | Nome do cliente |
{{ person.legalName }} | Razão social |
{{ person.documentNumber }} | CPF/CNPJ |
{{ person.documentType }} | Tipo de documento |
Cobrança (charge.)
| Variável | Conteúdo |
|---|---|
{{ charge.documentNumber }} | Número do documento/fatura |
{{ charge.originalAmount }} | Valor original |
{{ charge.currentAmount }} | Valor atualizado (com juros/multa/desconto) |
{{ charge.interestAmount }} | Valor de juros |
{{ charge.fineAmount }} | Valor de multa |
{{ charge.discountAmount }} | Valor de desconto |
{{ charge.dueDate }} | Data de vencimento |
{{ charge.issueDate }} | Data de emissão |
{{ charge.daysOverdue }} | Dias em atraso |
{{ charge.status }} | Status da cobrança |
{{ charge.barcode }} | Código de barras do boleto |
{{ charge.pixEmv }} | Código PIX copia-e-cola |
{{ charge.paymentUrl }} | Link de pagamento |
Sua empresa (account.)
| Variável | Conteúdo |
|---|---|
{{ account.name }} | Nome da empresa |
{{ account.tradeName }} | Nome fantasia |
{{ account.documentNumber }} | CNPJ da empresa |
{{ account.phone }} | Telefone de contato |
{{ account.email }} | E-mail de contato |
{{ account.website }} | Site da empresa |
Classificação (classification.)
| Variável | Conteúdo |
|---|---|
{{ classification.name }} | Nome da classificação do cliente |
Também estão disponíveis os prefixos collectionRule. e collectionRuleStep. (dados da régua e da etapa que originou o envio), para casos avançados.
Formatadores
| Formatador | Resultado |
|---|---|
currency | R$ 1.234,56 |
date | 25/12/2025 |
dateTime | 25/12/2025 14:30 |
document | 123.456.789-00 |
phone | (11) 99999-9999 |
Exemplo: {{ charge.currentAmount | currency }}, {{ person.documentNumber | document }}.
Validação
Ao salvar, o sistema valida o template: prefixo desconhecido, formatador inexistente e chaves não balanceadas ({{ sem }}) são apontados como erro antes de o template ir ao ar. O painel de variáveis lista tudo o que está disponível para a categoria escolhida — clique para inserir sem digitar errado.
Boas práticas
- Tenha um template por etapa e ajuste o tom à altura do atraso: amigável antes do vencimento, firme depois de 15 dias.
- Sempre inclua um caminho de pagamento (
charge.pixEmv,charge.paymentUrloucharge.barcode) — mensagem de cobrança sem como pagar gera ligação no seu suporte. - Nos avisos de negativação/protesto, use a categoria correta: eles documentam o comunicado prévio na trilha de auditoria.