Regras de Negócio — Sistema de Cobrança IBFT
Documento de referência para o desenvolvimento do sistema de cobrança. Consolidado em 28/09/2026.
Fonte única das regras de negócio do
nectar-charges(.project/docs/business_rules.md). Substitui os antigosrules/<scope>/*.md(R-001 a R-007), que continuam no repositório como histórico, mas desatualizados. Em caso de conflito, vale este documento. ORULES.mdguarda o índice antigo. Os IDs de família do blueprint (RN-REPARC-*,RN-QUIT-*,RN-NEG-*,RN-EXT-*,RN-CANC-*,RN-STATUS-*) foram aposentados: citar as regras pelos IDsRN-XXeRC-XXdeste documento.
Fontes
| Sigla | Fonte | Data |
|---|---|---|
| GO | Guia Operacional do Setor Financeiro IBFT — v1.0 (base normativa das RN-01 a RN-49) | 2026 |
| AF | Documento “Análise do Fluxo de Cobrança” — Setor Financeiro IBFT, v1.0 | jun/2026 |
| RE | Reunião “Novo sistema cobrança” (Bruno, Thiago, Bruna, Francisco, Gabriel, Rodrigo) — anotações e transcrição do Gemini | 03/09/2026 |
| SL | Conversas no Slack com Francisco Sforza (DM) | jun–set/2026 |
| PC | Painel de Contratos IBFT (ferramenta interna em Apps Script, observada em uso) | set/2026 |
As regras RN-XX são normativas (fonte GO). As regras RC-XX são complementares, extraídas de AF, RE, SL e PC, e descrevem a operação atual. Onde as fontes divergem, isso está sinalizado na seção Divergências e pontos em aberto.
Glossário e ferramentas
| Termo | Significado |
|---|---|
| Asaas | Gestão financeira: cobranças, parcelas, boletos, negativação |
| Apolo | Plataforma acadêmica: progresso, acesso, matrícula, certificado, notas do aluno |
| Checkout | Emissão de acordos (reparcelamento / quitação) a partir da compra original |
| Kommo (“Como”) | CRM de atendimento e disparos via WhatsApp Business API |
| Lote | (Processo atual, não existirá no novo sistema.) Lista de inadimplentes extraída manualmente do Asaas e distribuída entre atendentes |
| Régua | Sequência de até 4 mensagens de cobrança |
| Progresso | Percentual de conclusão do aluno no produto (Apolo) |
| Responsável pelo setor | Gestor(a) do setor de cobrança (hoje, Lays é citada como responsável pela negativação e pelas escaladas) |
1. Status de cobrança
| ID | Status | Regra |
|---|---|---|
| RN-01 | SEM PREVISÃO | Alunos com 1 ou 2 parcelas em atraso que não sabem quando pagarão ou não têm interesse em reparcelamento. |
| RN-02 | NEGATIVAR | Alunos com progresso acima de 25% no produto E 3 ou mais parcelas em atraso nesse produto. |
| RN-03 | NÃO RESPONDEU | Alunos que receberam as 4 mensagens da régua e não responderam nenhuma. ⏸️ Adiada: fora do escopo atual (mensageria), ver Fora do escopo atual. |
| RN-04 | NEGOCIADO | Aluno que confirmou pagamento efetivo. Só é marcado após confirmação no Asaas, com todas as parcelas em atraso regularizadas. |
| RN-05 | CANCELADO | Alunos que optaram pelo cancelamento. A aceitação do termo pelo aluno é suficiente — não exige autorização prévia da gestão. |
| RN-06 | REINCIDENTE | Customer com 2 ou mais negociações aprovadas, somando todos os seus débitos. Tanto faz se negociou débitos diferentes ou o mesmo débito várias vezes. Conta toda negociação com status approved, mesmo que ainda não tenha sido paga, porque a aprovação já dispara um novo reparcelamento. É um atributo do customer, não um status do caso. (Ajustada 28/09/2026; o texto original falava em “NEGOCIADO em mais de um lote”.) |
Complementares
- RC-01 — Status de atendimento (Kommo). Além do status final da cobrança, o lead passa por etapas de atendimento: Contato inicial → Em atendimento (quando o aluno responde). (RE)
- RC-02 — Status “Em negociação” manual. O novo sistema deve permitir que o atendente altere manualmente o status do lead para Em negociação. (RE — próxima etapa atribuída ao Bruno)
-
RC-03 — Reinício automático da régua. ⏸️ Regra definida, implementação adiada (mensageria). NÃO RESPONDEU não encerra o caso. Depois de um prazo configurável (valor ainda a definir), a régua de 4 mensagens recomeça sozinha para o aluno que continua inadimplente. Isso substitui o processo antigo, em que o aluno voltava a ser cobrado ao aparecer num lote futuro. (AF, SL, decisão 28/09/2026)
- RC-36 — Máquina de estados do caso. (Migrada do blueprint em 28/09/2026.) Todo caso começa em
EM_COBRANCA. Uma transição fora da máquina retorna422 invalid_transition, e toda transição gera registro de auditoria e item no histórico do caso.
mermaid
stateDiagram-v2
[*] --> EM_COBRANCA
EM_COBRANCA --> NEGOCIADO: pagamento confirmado<br/>(webhook)
EM_COBRANCA --> SEM_PREVISAO: 1-2 parcelas em atraso,<br/>sem previsão
EM_COBRANCA --> NEGATIVAR: progresso > 25% e<br/>3+ em atraso
EM_COBRANCA --> NAO_RESPONDEU: 4 disparos sem resposta<br/>(adiada)
EM_COBRANCA --> CANCELADO: aceite do termo<br/>pelo aluno
SEM_PREVISAO --> EM_COBRANCA: retomada
NAO_RESPONDEU --> EM_COBRANCA: régua recomeça<br/>após prazo (RC-03)
NEGATIVAR --> EM_COBRANCA: retomada
NEGATIVAR --> NEGOCIADO: avulsa da quitação paga<br/>(webhook)
- RC-37 — NEGOCIADO só por fato verificável. (Migrada do blueprint em 28/09/2026.) O status NEGOCIADO só é aplicado por confirmação de pagamento via webhook, nunca por promessa. Promessa de pagamento vira agendamento, não NEGOCIADO.
2. Negativação
| ID | Regra | Descrição |
|---|---|---|
| RN-07 | Elegibilidade | Progresso acima de 25% no produto e 3 ou mais parcelas em atraso. |
| RN-08 | Exceção ao critério de progresso | No 2º reparcelamento, a negativação é permitida independentemente do percentual de progresso. |
| RN-09 | Quem executa | Somente usuários com papel admin ou director podem executar a negativação dos alunos com status NEGATIVAR. O atendente identifica e marca o aluno como NEGATIVAR, mas não executa. A remoção não é manual: o sistema faz automaticamente (RN-10). (Ajustada; ver D-03.) |
| RN-10 | Remoção do status Negativado | O aluno somente sai do status Negativado mediante pagamento confirmado da negociação. Quando a cobrança avulsa da quitação é paga, o sistema remove a negativação no Asaas automaticamente e exclui as parcelas negativadas (RC-06). (Ajustada 28/09/2026.) |
| RN-11 | Efeito no valor | Parcelas negativadas perdem juros e multa automaticamente, voltando ao valor original. |
| RN-12 | Pré-requisito para reparcelamento | O pagamento de todas as parcelas negativadas é obrigatório antes de qualquer reparcelamento. Enquanto houver negativadas, nenhum reparcelamento pode ser formalizado. |
| RN-13 | Desconto mínimo em quitação com negativadas | O atendente pode flexibilizar o valor até o mínimo de R$ 500,00. Abaixo disso não é permitido. |
Complementares
- RC-04 — Execução no Asaas (feita por
admin/director). Informar o CPF, selecionar a parcela mais antiga em atraso e preencher o endereço com os dados do Apolo. (RE) - RC-05 — Ciclo de status no Asaas. Após a solicitação, o registro fica Em análise e, em 1 a 2 dias úteis, passa para Negativado. (RE)
- RC-06 — Quitação de parcelas negativadas (novo sistema). Na quitação de uma negativação, o sistema cria uma cobrança avulsa com o valor da negociação, atrelada ao código do parcelamento original no Asaas. Quando a avulsa é paga, o sistema remove a negativação no Asaas e exclui as parcelas negativadas, tudo automaticamente. Até o pagamento, elas continuam existindo e o aluno segue negativado (RN-10). Como as parcelas originais deixam de existir após o pagamento, elas não voltam para “em atraso” e o webhook de parcela atrasada não reabre o caso de quem já pagou. (Decisão 28/09/2026.)
- Processo antigo, substituído: emitir quitação avulsa no Checkout → solicitar via Slack a remoção da restrição no Asaas (~1 dia útil) → excluir manualmente as parcelas negativadas que voltavam para “em atraso”. (RE, AF)
- RC-07 — Automação prevista. Os fluxos de negativação e cancelamento devem ser automatizados no novo sistema, seguindo as etapas acima. (RE — próxima etapa atribuída ao Bruno)
Tabela de decisão — elegibilidade para negativação (Migrada do blueprint em 28/09/2026.)
| Progresso no produto | Parcelas em atraso | 2º reparcelamento? | Elegível |
|---|---|---|---|
| > 25% | ≥ 3 | não | Sim |
| > 25% | < 3 | não | Não |
| ≤ 25% | ≥ 3 | não | Não (RN-48) |
| ≤ 25% | ≥ 3 | sim | Sim (exceção da RN-08) |
3. Reparcelamento
| ID | Regra | Descrição |
|---|---|---|
| RN-14 | Elegibilidade | 2 ou mais parcelas em atraso em um determinado produto. |
| RN-15 | Reparcelamento por produto | A oferta é individual por produto. Não é possível consolidar parcelas de produtos diferentes em um único reparcelamento. |
| RN-16 | Prioridade de produto | Quando o cliente tem pendências em mais de um produto, priorizar sempre a Formação de Terapeutas TRG. |
| RN-17 | Número máximo de parcelas | Máximo de 12 parcelas mensais por acordo. |
| RN-18 | Vencimento máximo | A 1ª parcela do acordo não pode ter vencimento superior a 7 dias à frente da data de emissão. Se o cliente solicitar prazo maior, agendar e emitir na data indicada com valores atualizados. |
| RN-19 | Formas de pagamento | Boleto, Pix ou cartão de crédito. |
| RN-20 | Compras durante reparcelamento ativo | Novos produtos IBFT só podem ser adquiridos à vista durante reparcelamento ativo. O parcelamento só é liberado após quitação total do reparcelamento. |
| RN-21 | Exceção CITRG | A filiação ao CITRG pode ser adquirida de forma parcelada mesmo durante reparcelamento ativo, desde que o aluno tenha concluído 100% da Formação TRG e emitido o Certificado Provisório TRG. |
| RN-22 | Sem desconto no reparcelamento | Descontos se aplicam exclusivamente em quitação total da dívida. Não há desconto em reparcelamento. |
| RN-23 | Limite de reparcelamentos | Até 2 reparcelamentos por produto. Após o 2º, não há possibilidade de novo parcelamento futuro, independentemente das circunstâncias. |
Complementares
- RC-08 — Emissão pelo Checkout da compra original. O acordo é emitido duplicando a compra original no Checkout e editando tipo, valor, parcelas e vencimento; em seguida é gerado no Asaas e o link é enviado ao aluno. Usar a compra original garante que o acesso no Apolo seja liberado corretamente. (AF, RE)
- RC-09 — Pós-pagamento. Após a confirmação do pagamento: atualizar o acesso no Apolo, registrar o acordo nas observações do Asaas e do Apolo, enviar confirmação ao aluno e marcar NEGOCIADO na planilha/sistema. (AF, RE)
- RC-10 — Proposta sem resposta. Propostas costumam ter vencimento no mesmo dia. Se o aluno parar de responder após a proposta, enviam-se templates de retomada por 4 dias consecutivos; sem retorno, a conversa é finalizada e o status registrado. (SL)
-
RC-11 — Acordo não pago. Se o aluno fecha um reparcelamento e não paga conforme previsto, reinicia-se a sequência de 4 mensagens para entender o que ocorreu. (SL)
- RC-38 — Um acordo ativo por produto. (Migrada do blueprint em 28/09/2026.) Cada produto tem no máximo um acordo ativo, e o valor das parcelas deve ficar próximo ao da compra original.
Tabela de decisão — reparcelamento (Migrada do blueprint em 28/09/2026.)
| Reparcelamentos já feitos no produto | Parcelas pedidas | Vencimento da 1ª | Resultado |
|---|---|---|---|
| 0 ou 1 | ≤ 12 | ≤ 7 dias | Acordo aceito |
| 0 ou 1 | ≤ 12 | > 7 dias | Vira agendamento (RN-18) |
| 0 ou 1 | > 12 | qualquer | Rejeitado (RN-17) |
| 2 | qualquer | qualquer | Rejeitado (RN-23); resta quitação |
4. Segundo reparcelamento
| ID | Regra | Descrição |
|---|---|---|
| RN-24 | Exige contrato formal | O 2º reparcelamento exige: formulário de identificação via Google Forms, geração automática de contrato de confissão de dívida e assinatura formal pelo aluno (digital via GOV.BR ou manual). |
| RN-25 | Aviso de última oportunidade | A mensagem ao aluno deve incluir explicitamente que esta é a última oportunidade de negociação. Qualquer atraso futuro não dará direito a novo parcelamento. |
| RN-26 | Exclusão do 1º reparcelamento | Após a emissão do 2º reparcelamento, o sistema exclui automaticamente todas as cobranças pendentes do 1º reparcelamento (em atraso e futuras), mantendo apenas as já pagas. Sem essa exclusão, o aluno ficaria com cobranças duplicadas. (Ajustada: o texto original do Guia exigia exclusão manual pelo atendente; ver D-02.) |
Complementares
- RC-12 — Contrato assinado antes da emissão. O contrato deve estar assinado antes de gerar a nova negociação no Checkout. Por isso o vencimento da 1ª parcela costuma ser lançado para 7 dias à frente, dando tempo para a assinatura. (RE, SL)
- RC-13 — Contrato é exclusivo do 2º reparcelamento. Contrato formal com assinatura existe somente no 2º reparcelamento. O 1º reparcelamento e a quitação não geram contrato. (GO, AF, RE; confirmado em 28/09/2026)
- RC-14 — Estados do contrato. O Painel de Contratos acompanha os contratos com os status Aguardando (assinatura), Assinado, Expirado e Cancelado, e oferece as ações Ver, Copiar link, Copiar mensagem, Reenviar, Desbloquear, Prorrogar e Cancelar. Indicadores exibidos: aguardando assinatura, assinados no mês, receita assinada, ticket médio, tempo médio para assinar, taxa de conversão e contratos que expiram em ≤ 7 dias. (PC)
- RC-35 — Prorrogar e Desbloquear contrato. As duas ações do Painel atual entram no sistema. Prorrogar estende a validade de um contrato que está aguardando assinatura. Desbloquear libera o contrato para ser assinado sem limite de prazo: ele deixa de expirar. (decisão 28/09/2026)
- RC-34 — Validade do contrato: 7 dias. A validade é contada a partir da emissão (
valid_at = issued_at + 7 dias,Contract::VALIDITY_DAYS). Um contrato é considerado expirado quando continua aguardando assinatura depois da validade. “Expirado” não é um status gravado: é calculado a partir deawaiting_signature+ validade vencida. Depois de expirado, o contrato perde as ações de envio (copiar link e reenviar) e mantém visualizar, baixar e cancelar. Nada é cancelado automaticamente, e o acordo (2º reparcelamento) não é emitido, porque a emissão depende da assinatura (RC-12). (códigonectar-charges)
5. Quitação
| ID | Regra | Descrição |
|---|---|---|
| RN-27 | Quitação total — parcelas em atraso | Remoção dos juros e multa. Cálculo: quantidade de parcelas × valor original = valor final. |
| RN-28 | Quitação com mix (atrasadas + a vencer) | Remoção de juros nas atrasadas + até 10% de desconto sobre as parcelas a vencer. |
| RN-29 | 2º reparcelamento — tudo em atraso | Remoção dos juros OU pagamento parcela a parcela, conforme a possibilidade do aluno. |
| RN-30 | Tipo do pagamento no Checkout | O campo “Tipo do pagamento” deve ser alterado de “Padrão” para “Reparcelamento” ou “Quitação” antes de gerar no Asaas. Após gerar, não é mais possível modificar a descrição. |
Complementares
- RC-15 — Juros automáticos. Nos produtos IBFT, os boletos calculam juros e multa automaticamente após o vencimento. (RE)
-
RC-16 — Quitação parcial (várias parcelas). Hoje o atendente soma os valores dos boletos e gera um link único. Como o Checkout não suporta bem quitação parcial, usa-se “pagamento integral”, o que exige uma baixa manual em dinheiro para manter a consistência entre as contas. O novo sistema deve tratar quitações parciais sem gerar duplicidade financeira entre contas do Asaas. (RE — próxima etapa atribuída ao Bruno)
- RC-39 — Piso e teto na quitação. (Migrada do blueprint em 28/09/2026.) Uma simulação cujo resultado fique abaixo do piso de R$ 500,00 é rejeitada, não arredondada. Os 10% da RN-28 são um teto, não um valor padrão. Ver D-11 sobre o alcance do piso.
6. Extensão de acesso
| ID | Regra | Descrição |
|---|---|---|
| RN-31 | Prazo padrão | 12 meses a partir da data de compra/liberação. |
| RN-32 | Acesso vitalício | Produtos adquiridos na Black Friday têm acesso vitalício, sem prazo de expiração. |
| RN-33 | Quando conceder | Principalmente em reparcelamento e quitação total, quando o acesso já expirou e o curso não foi concluído (< 100% de progresso). |
| RN-34 | Quando NÃO conceder | Aluno com 100% de progresso e certificado emitido. Aluno com acesso vitalício (Black Friday). |
| RN-35 | Autonomia do atendente | Até 90 dias. Acima de 90 dias, escalar para o responsável pelo setor. |
| RN-36 | Registro obrigatório | Registrar no campo de Notas do Apolo e no campo de Observações do Asaas. Ambos devem ser atualizados. |
| RN-37 | Nova data de expiração | Data de liberação do pagamento no Asaas + 12 meses + dias de extensão acordada. |
Complementares
- RC-40 — Extensão: base de cálculo e casos especiais. (Migrada do blueprint em 28/09/2026.) A base da RN-37 é a data de liberação do pagamento, e extensões sucessivas somam dias sobre essa mesma base. Para aluno negativado, a extensão é concedida, mas só passa a valer quando ele paga a 1ª parcela do acordo. A recusa por 100% concluído com certificado (RN-34) é definitiva. Aluno com progresso ≤ 25% é candidato a cancelamento, não a extensão.
7. Cancelamento de matrícula
| ID | Regra | Descrição |
|---|---|---|
| RN-38 | Elegibilidade | Progresso igual ou abaixo de 25% no produto E situação de compra original ou 1º reparcelamento. Não se aplica ao 2º reparcelamento. |
| RN-39 | Protocolo em 3 etapas | Mensagem de aptidão → aviso das condições → envio do termo. O termo deve ser aceito pelo aluno via botão “Concordo”. |
| RN-40 | Efeitos | Todas as cobranças atuais e futuras são canceladas. Valores já pagos não são estornados. Restrição de novas compras por 6 meses. |
| RN-41 | Procedimentos pós-cancelamento | No Asaas: excluir todas as parcelas pendentes, manter só as pagas. No Apolo: desativar apenas a matrícula do produto cancelado — o aluno não é bloqueado e mantém acesso aos demais produtos em dia. (Ajustada: o texto original do Guia dizia “bloquear o aluno e desativar o produto”; prevalece a decisão da reunião de 03/09 — ver RC-17 e D-01.) |
Complementares
- RC-17 — Bloqueio apenas da matrícula cancelada. O cancelamento deve desativar somente a matrícula do produto cancelado, sem bloquear o acesso do aluno a outros produtos em dia. (RE — decisão alinhada; prevalece sobre o texto original da RN-41)
-
RC-18 — Observação padronizada. No Asaas e nas notas do Apolo, registrar o texto “cancelado abaixo de 25%”, o nome do produto e a data atual. Em seguida, atualizar o status da cobrança para CANCELADO. (RE)
- RC-41 — Reter antes de cancelar. (Migrada do blueprint em 28/09/2026.) Antes do protocolo de cancelamento, o atendente oferece reparcelamento ou flexibilização.
- RC-42 — Sem saída no 2º reparcelamento. (Migrada do blueprint em 28/09/2026.) Quem está no 2º reparcelamento não pode reparcelar de novo (RN-23) nem cancelar (RN-38). Restam duas saídas: quitar ou ser negativado (RN-08).
8. Registro e sincronização
| ID | Regra | Descrição |
|---|---|---|
| RN-42 | Registro duplo | Toda observação feita no Asaas deve ser replicada no Apolo, e vice-versa. As duas plataformas devem estar sempre sincronizadas. |
| RN-43 | Campo de observações obrigatório | O campo de observações no Asaas deve registrar todas as tratativas relevantes: extensões, cancelamentos, acordos especiais e qualquer modificação, por menor que seja. |
Complementares
- RC-19 — Histórico acompanha a cobrança. Quando uma cobrança é transferida entre atendentes, todo o histórico de mensagens deve ir junto, para que qualquer atendente tenha o contexto do que já foi negociado. (SL)
9. Regras operacionais gerais
| ID | Regra | Descrição |
|---|---|---|
| RN-44 | Janela de 24 horas | Após a última mensagem do aluno, o atendente tem 24 horas para responder com texto livre. Fora dessa janela, só é possível enviar templates aprovados pelo WhatsApp. |
| RN-45 | Escalada obrigatória | Qualquer situação fora do fluxo padrão (descontos não previstos, ameaças legais, pedidos de cancelamento, acordos abaixo do mínimo) deve ser escalada para o responsável pelo setor via Slack antes de qualquer ação. |
| RN-46 | Régua de 4 mensagens | Cada aluno recebe até 4 mensagens ao longo do ciclo. Sem resposta após as 4, o status é marcado como NÃO RESPONDEU. ⏸️ Adiada: fora do escopo atual (mensageria). |
| RN-47 | Comunicação sobre restauração de acesso | Acesso vigente: informar que continuará após o pagamento. Acesso expirado: NÃO mencionar restauração automática. Casos de extensão exigem análise individual. |
| RN-48 | Verificação de progresso antes de negativar | Antes de qualquer negativação, verificar o progresso no Apolo. Alunos com ≤ 25% de progresso não podem ser negativados (exceto no 2º reparcelamento). |
| RN-49 | Distribuição igualitária entre atendentes | Os casos são distribuídos de forma igualitária entre os atendentes disponíveis à medida que as parcelas entram em atraso, a partir do webhook de parcela atrasada do Asaas. Não há limite de carteira por atendente: o “~1.000 clientes por atendente” do Guia era só o tamanho médio dos lotes antigos. Redistribuições por ausência devem ser comunicadas ao responsável pelo setor. (Ajustada 28/09/2026; o texto original falava em distribuição de lotes.) |
Complementares — distribuição da carteira
O novo sistema não usa lotes de importação do Asaas. Saíram desta seção as regras que só existiam por causa da extração manual: o critério de filtro por período de vencimento, a reaparição em lotes (coluna “Aparições”) e o viés do filtro por vencimento. As regras que continuam valendo foram reescritas sem depender de lote.
- RC-21 — Um aluno, um atendente. Um aluno com pendências em mais de um produto tem um único atendente responsável, para não ser cobrado por duas pessoas. (SL)
- RC-22 — Distribuição contínua, sem priorização por valor. Cada parcela atrasada que chega pelo webhook do Asaas gera ou atualiza o caso do aluno, que é atribuído a um atendente seguindo a distribuição igualitária da RN-49. Se o aluno já tem atendente responsável, o caso continua com ele (RC-21). Cada atendente recebe alunos com inadimplências variadas, de 1 parcela a todas em atraso. (SL)
- RC-24 — Total real de parcelas em atraso. A elegibilidade (reparcelamento, negativação, cancelamento) sempre considera todas as parcelas em atraso do aluno no produto. (SL)
- RC-25 — Ausências e férias. Quando um atendente se ausenta, os novos casos são divididos entre os atendentes disponíveis. As conversas em andamento do ausente passam para o responsável pelo setor (hoje é prática consensual, não diretriz formal). (SL)
- RC-26 — Carga inicial. A carga inicial do novo sistema segue um critério de idade da dívida (ex.: 2025/2026), com lista CSV enviada pelo setor. É uma carga única, não um processo recorrente de lotes. (RE)
Complementares — régua e atendimento
- RC-27 — Mensagens manuais em dias sucessivos. As 4 mensagens são disparadas manualmente, uma por dia, apenas para quem não respondeu à anterior. Se o aluno responde e depois para de responder, a sequência de 4 recomeça. (RE)
- RC-28 — Verificação no primeiro contato. Ao receber resposta, o atendente lê o histórico, consulta o Asaas (parcelas, valores, observações) e o Apolo (progresso, expiração, certificado) antes de apresentar as pendências. (AF)
- RC-29 — Opções de negociação. Conforme o número de parcelas em atraso: fatura única, reparcelamento (máx. 12x) ou quitação total com desconto. (AF)
- RC-30 — Agendamento de retorno. Quando o aluno não pode negociar no momento, cria-se um agendamento (tarefa com data, responsável e contexto). No dia, dispara-se o template de retorno; sem resposta, segue a régua de 4 mensagens. O novo sistema deve oferecer visão de agendamentos por atendente e geral. (AF, RE)
10. Comissão
- RC-32 — Comissão por parcela paga. Cada parcela que o cliente pagar gera comissão, independentemente da forma de pagamento (quitação parcial, link por parcela etc.). (Decisão 28/09/2026; substitui a versão informal do Slack, em que links separados não contavam.)
- Fora do escopo do projeto de cobrança: a comissão do suporte (existe quando o suporte faz a venda, mas não é tratada neste sistema) e a lógica dos filtros do Checkout usada no cálculo atual. A antiga RC-33 (reparcelamento não gera comissão para o suporte) também fica fora deste escopo.
11. Escopo da V2
Rascunho montado com as decisões de 28/09/2026. A validar.
- Centraliza os dados financeiros e o histórico de atendimento. Mensageria (disparos e régua) fica fora do escopo por enquanto (ver Fora do escopo atual).
- Sem lotes de importação do Asaas. Os casos são criados e distribuídos de forma contínua pelo webhook de parcela atrasada (RN-49, RC-22).
- Cancelamento desativa apenas a matrícula do produto cancelado (RN-41, RC-17).
- Emissão do 2º reparcelamento exclui automaticamente as cobranças pendentes do 1º (RN-26).
- Contratos só no 2º reparcelamento, com validade de 7 dias e as ações Prorrogar e Desbloquear (RC-13, RC-34, RC-35).
- Negativação executada somente pelos papéis
adminedirector(RN-09). - Reincidência = 2+ negociações aprovadas por customer (RN-06).
- Comissão gerada por parcela paga (RC-32).
- Interface administrativa adaptada ao setor de cobrança.
12. Controle de acesso na ficha do cliente
(Migrada do blueprint em 28/09/2026.) Papéis que se qualificam: admin e director. attendant e legal não se qualificam, mesmo que legal tenha relação com a aba Jurídico.
- RC-43 — As abas “Jurídico” e “Auditoria” só aparecem na ficha para
admin/director. - RC-44 — O botão “Negativar cliente” (no cabeçalho da ficha e no menu de ações da tabela de clientes) só aparece para
admin/director. - RC-45 — O atalho “Ver auditoria completa” da aba Pessoal só aparece para quem tem acesso à aba Auditoria.
- Isso é uma restrição de exibição. A autorização de executar a negativação (RN-09) continua sendo validada no backend.
Divergências e pontos em aberto
| ID | Tema | Divergência / dúvida | Fontes |
|---|---|---|---|
| D-01 | Bloqueio no cancelamento | ✅ Resolvida (28/09/2026): vale a decisão da reunião — desativar apenas a matrícula do produto cancelado, sem bloquear o aluno. RN-41 ajustada. | GO × RE |
| D-02 | Exclusão do 1º reparcelamento | ✅ Resolvida (28/09/2026): a exclusão das cobranças pendentes do 1º reparcelamento será feita automaticamente pelo sistema ao emitir o 2º. RN-26 ajustada. | GO × RE |
| D-03 | Quem executa a negativação | ✅ Resolvida (28/09/2026): somente os papéis admin e director executam a negativação. A remoção é automática pelo sistema após o pagamento (RN-10). RN-09 ajustada. |
GO × AF × RE |
| D-04 | Duração da régua | ⏸️ Adiada (28/09/2026): a mensageria está fora do escopo atual. Fica registrado: AF fala em 4 mensagens ao longo de 20 a 30 dias; RE fala em 4 mensagens em dias sucessivos. | AF × RE |
| D-05 | Expiração do contrato | ✅ Resolvida (28/09/2026): o contrato vale 7 dias a partir da emissão (ver RC-34). | PC × código |
| D-06 | Carteira por atendente | ✅ Resolvida (28/09/2026): não existe limite de carteira. A distribuição é igualitária e contínua, disparada pelo webhook de parcela atrasada do Asaas. RN-49 ajustada. | GO |
| D-07 | Contratos fora do 2º reparcelamento | ✅ Resolvida (28/09/2026): contrato existe somente no 2º reparcelamento (RC-13). | RC-13 × PC |
| D-08 | Comissões | ✅ Resolvida (28/09/2026): a comissão é gerada por parcela paga (RC-32). Comissão do suporte e lógica do Checkout ficam fora do escopo. | SL |
| D-09 | Regras que ainda citam “lote” | ✅ Resolvida (28/09/2026): a RN-06 foi redefinida como “2+ negociações aprovadas por customer”, a RN-49 como distribuição contínua via webhook (D-06), e RN-03, RN-46 e RC-03 foram adiadas junto com a mensageria. Pendente no código: ajustar o cálculo em Dashboard::Summarize (ver D-10). |
GO × decisão 28/09 |
| D-10 | Cálculo de reincidência no código | Hoje Dashboard::Summarize#recidivist_customer_count conta como reincidente o customer que teve um débito negotiated encerrado e depois abriu outro débito. Isso não é o mesmo que a nova RN-06 (2+ Negotiation com status approved). Precisa ajustar. |
código × RN-06 |
| D-11 | Alcance do piso de R$ 500 | O blueprint dizia que o piso vale para qualquer flexibilização, em qualquer quitação. A RN-13 do Guia aplica o piso só à quitação com parcelas negativadas. Definir qual vale. | blueprint × GO |
| D-12 | Quando o caso vira NEGOCIADO | O blueprint levava o caso a NEGOCIADO no pagamento da 1ª parcela do acordo. A RN-04 exige todas as parcelas em atraso regularizadas. Definir o gatilho. | blueprint × GO |
Correspondência com IDs antigos
Os IDs do blueprint, usados nos arquivos rules/<scope>/*.md, ainda aparecem em specs, planos e código. Correspondência:
| ID antigo | Regra atual |
|---|---|
RN-REPARC-1 |
RN-23 |
RN-REPARC-2 |
RN-17, RC-38 |
RN-REPARC-3 |
RN-18 |
RN-REPARC-4 |
RN-22 |
RN-REPARC-5 |
RN-15, RN-16, RC-38 |
RN-REPARC-6 |
RN-20, RN-21 |
RN-QUIT-1 a RN-QUIT-3 |
RN-27 a RN-29 |
RN-QUIT-4 |
RN-13, RC-39 |
RN-NEG-1 |
RN-02, RN-07 |
RN-NEG-2 |
RN-08, RN-48 |
RN-NEG-3 |
RN-09 |
RN-NEG-4 |
RN-12 |
RN-NEG-5 |
RC-06 |
RN-EXT-1 |
RN-31, RN-32 |
RN-EXT-2 |
RN-35 |
RN-EXT-3 |
RN-37 |
RN-EXT-4 |
RN-34, RC-40 |
RN-CANC-1 |
RN-38 |
RN-CANC-2 |
RC-41 |
RN-CANC-3 |
RN-05, RN-39 |
RN-CANC-4 |
RN-40, RN-41 |
RN-STATUS-1 |
RN-04, RC-37 |
RN-STATUS-2 |
RN-03 (adiada) |
RN-STATUS-3 |
RN-06 |
RN-ACCESS-1 a RN-ACCESS-3 |
RC-43 a RC-45 |
Fora do escopo atual
Regras registradas, mas adiadas para uma próxima fase, porque o sistema ainda não vai tratar mensageria (disparos e régua de cobrança):
- RN-03 — status NÃO RESPONDEU
- RN-46 — régua de 4 mensagens
- RC-03 — reinício automático da régua após um prazo (regra definida em 28/09/2026; falta definir o prazo)
- D-04 — cadência da régua
- RN-44 — janela de 24 horas do WhatsApp
- RC-10 — templates de retomada após proposta sem resposta
- RC-11 — reinício da sequência quando o acordo não é pago
- RC-27 — mensagens manuais em dias sucessivos
- RC-30 — agendamento de retorno com template
- P-08, P-09 — prazo de reinício da régua e se SEM PREVISÃO volta para ela
Checklist de pendências
Atualizado em 28/09/2026. Marcar
[x]à medida que cada item for decidido.
Decisões de negócio
- [x] P-01 — Reincidência conta negociação não paga? ✅ Sim. Conta toda negociação
approved, paga ou não, porque a aprovação dispara um novo reparcelamento (RN-06). - [x] P-02 — Contrato só no 2º reparcelamento? ✅ Sim (RC-13).
- [x] P-03 — Prorrogar e Desbloquear contrato. ✅ Entram no sistema (RC-35).
- [x] P-03a — O que “Desbloquear” faz? ✅ Libera o contrato para assinatura sem limite de prazo (RC-35).
- [ ] P-03b — Prorrogar. Estende a validade por quantos dias (outros 7?) e quantas vezes pode ser feita?
- [x] P-04 — Parcelas negativadas que voltam para “em atraso”. ✅ Na quitação, o sistema exclui as parcelas negativadas e cria uma cobrança avulsa com o valor da negociação, atrelada ao código do parcelamento (RC-06).
- [x] P-04a — Momento da exclusão. ✅ As parcelas negativadas são excluídas automaticamente quando a cobrança avulsa é paga (RC-06).
- [x] P-04b — Remoção da negativação no Asaas. ✅ Automática pelo sistema, quando a avulsa é paga (RN-10, RC-06).
- [x] P-05 — Comissão. ✅ Toda parcela paga gera comissão (RC-32).
- [x] P-06 — Comissão do suporte. ✅ Existe, mas fica fora do escopo da cobrança.
-
[x] P-07 — Lógica dos filtros do Checkout. ✅ Fora do escopo do projeto de cobrança.
- [ ] P-19 — Piso de R$ 500. (D-11) Vale para qualquer quitação com flexibilização ou só para a quitação com parcelas negativadas?
- [ ] P-20 — Gatilho do NEGOCIADO. (D-12) O caso vira NEGOCIADO quando a 1ª parcela do acordo é paga, ou só quando todas as atrasadas estão regularizadas?
Adiadas (mensageria)
- [x] ⏸️ P-08 — Prazo de reinício da régua. (RC-03) Quantos dias depois da 4ª mensagem a régua recomeça?
- [x] ⏸️ P-09 — SEM PREVISÃO volta para a régua? (RC-03) Ou só NÃO RESPONDEU?
- [x] ⏸️ P-10 — Outras regras de mensageria. RN-44, RC-10, RC-11, RC-27 e RC-30 vão para “Fora do escopo atual”?
Documento
- [x] P-11 — Seção 11. ✅ Virou “Escopo da V2” (rascunho a validar).
Projeto nectar-charges
- [x] P-12 — R-005. ✅ O arquivo continua como histórico, desatualizado. A regra vigente é a RN-41 deste documento.
- [x] P-13 — R-001. ✅ O arquivo continua como histórico, desatualizado. A regra vigente é a RN-26 deste documento.
- [ ] P-14 — Reincidência no código. (D-10) Ajustar o
Dashboard::Summarize#recidivist_customer_countpara a RN-06 (2+Negotiationapprovedpor customer). - [ ] P-15 — Lotes. Tirar do escopo ou redefinir a USER-009 (importação de lotes) e as telas de Lotes.
- [x] P-16 — Cópia solta do documento. ✅
Claude outputs/removido. - [x] P-18 — R-003. ✅ O arquivo continua como histórico, desatualizado. As regras vigentes são a RN-09, a RN-10 e a RC-06 deste documento.
- [x] P-17 — Como o documento entra no projeto. ✅ Arquivo único em
.project/docs/business_rules.md. ORULES.mdaponta para ele.