Veja o que mudou em todas as versões
A aba Nota Fiscal do produto passou a permitir NFe de mercadoria, com ICMS e PIS/COFINS próprios, e o produto pode recusar cartão recorrente na venda.
Ao marcar o Tipo como NFe, a aba Nota Fiscal mostra o campo Tributação do Item: Imunidade constitucional, que mantém exatamente a regra usada até agora, ou Mercadoria tributada, que abre os campos de produto físico logo abaixo.
A mercadoria guarda NCM, CEST, unidade, origem e CFOP dentro e fora do estado. O ICMS é escolhido pelo destino da venda: consumidor final no estado do emitente, contribuinte com diferimento, ou alíquota interestadual do Sul/Sudeste, das demais regiões e de importados.
Vendas interestaduais para consumidor final não contribuinte saem com o diferencial de alíquota calculado. O regime tributário é escolhido na mercadoria e já sugere as alíquotas de PIS e COFINS do Lucro Presumido ou do Lucro Real.
Um produto pode ser marcado para aceitar somente cartão de crédito normal. Na venda, a opção Cartão Recorrente some das parcelas, e parcelas já marcadas como recorrentes voltam para cartão de crédito.
A lista "Vazamento — faltam no sistema" ganhou dois botões por lead: cadastrar o lead no sistema e excluir o lead do banco do site (WordPress).
Um clique traz o lead do site para o sistema com todos os campos preenchidos no formulário — UTMs, gclid, fbclid, endereço e os demais dados —, usando as mesmas regras da entrada oficial de leads: não duplica quem já existe pelo telefone ou e-mail, define a origem pelo utm_source e o responsável pela origem.
Leads de teste ou inválidos podem ser apagados do banco do site direto pela tela, com confirmação mostrando nome, e-mail e telefone antes de excluir.
Os botões aparecem nos leads vindos do WordPress. O cadastro fica na aba ASB, que é a base deste sistema; leads do export do site TSB não têm ação por não haver acesso ao banco de origem.
O cadastro e a edição de clientes passaram a exigir a escolha de um lead, feita num campo de busca no topo da aba Geral, que já traz os dados do lead para a ficha do cliente.
O novo campo Lead, acima do Nome Completo, pesquisa pelo nome, pelo e-mail ou pelo telefone (telefone, celular 1 e celular 2) e lista apenas os leads que ainda não viraram cliente.
Ao selecionar o lead, todos os campos que existem também no cliente — nome, contatos, documentos, aniversário e endereço — são copiados para o formulário, e o código IBGE é deduzido pela cidade e estado.
O lead escolhido é marcado como convertido para o cliente ao salvar, e trocar o lead na edição libera o anterior. Sem lead selecionado o cadastro não é salvo.
O menu Financeiro ganhou a tela Francesinha Detalhes, logo abaixo de Francesinhas: todos os itens de todas as francesinhas numa listagem única, com filtros completos.
Em vez de abrir francesinha por francesinha, a tela lista os itens de todas de uma vez, mostrando também o número da francesinha e a data de movimentação de cada item.
Filtre por status da parcela, status da venda, nome do cliente e nome do pagador — além dos filtros já conhecidos da tela de detalhes: nosso número, ID da venda, ID da parcela, valor, ocorrência, origem dos boletos, tipo de parcela e períodos de vencimento, pagamento e movimentação.
Selecione os itens filtrados e exporte em Excel ou PDF, no mesmo padrão da tela de detalhes da francesinha.
A listagem de Vendas ganhou cinco filtros novos: Produto, Categoria do Produto, Centro de Custo, Cancelado por e Motivo do Cancelamento.
Escolha um ou mais produtos e veja apenas as vendas que os contêm. O campo tem busca por nome.
Mostra as vendas cujos produtos pertencem às categorias escolhidas, usando as categorias cadastradas no centralizador.
Mostra as vendas cujos produtos estão vinculados aos centros de custo escolhidos — útil para separar as vendas de cada operação.
O filtro Motivo do Cancelamento traz as mesmas opções do modal de cancelar venda — Venda Valor Incorreto, Curso Quitado, Nova Venda, Curso Cancelado, Curso Trancado, Venda Duplicada e Venda Pendente — mais o cancelamento automático de cartão pendente. Aceita mais de um motivo ao mesmo tempo.
O filtro Cancelado por mostra as vendas canceladas ou trancadas pelo usuário escolhido. A lista traz todos os usuários, inclusive os inativos, já que vendas antigas podem ter sido canceladas por quem não trabalha mais na operação.
Uma tela nova em Relatórios reproduz o desenho da planilha de caixa do financeiro para bater número contra número, mês a mês e no total do período, no centro de custo que você escolher.
Cada linha é um mês e cada coluna tem correspondente na planilha: Venda comercial, AD, PARC, CCREC, CC CHEIO e Total entrada. O centro de custo é escolhido no filtro, porque cada operação tem a sua planilha, e sem escolha a tela soma todos. Funciona tanto para um mês isolado quanto para um período inteiro, com a linha de fechamento sempre igual à soma das linhas exibidas.
Um botão liga e desliga as colunas por tipo de lançamento do extrato: AD é BOLETO AD, PARC é BOLETO, CCREC é CIELO RECORRENTE e CC CHEIO é CIELO. Qualquer tipo fora desses quatro aparece numa coluna Outros, para nenhum lançamento ficar escondido da conferência.
Mês sem extrato lançado aparece zerado com aviso explícito, em vez de sugerir que não entrou dinheiro. E a tela informa que a Venda comercial conta só o que foi vendido neste ERP: as vendas feitas no sistema antigo ficam de fora e respondem por parte da diferença contra a planilha.
O Excel sai em segundo plano com duas abas — resumo dos filtros e totais, e o mês a mês completo — e chega por notificação com o link de download. O PDF sai em paisagem com os mesmos indicadores, avisos e a tabela mês a mês, no mesmo padrão das outras telas de relatório.
Nas telas de Leads e de Clientes, o campo Código IBGE passou a ser preenchido também quando a cidade é escolhida no seletor — antes ele só era preenchido ao digitar o CEP.
Ao selecionar uma cidade no cadastro de lead ou de cliente, o código IBGE correspondente é buscado no centralizador e gravado automaticamente, sem depender do CEP.
O sistema passou a conversar sozinho com a WAID (Curseduca). De madrugada ele confere quais clientes do ERP já existem lá e guarda o ID de cada um, espelha as matrículas (aluno × produto) e traz o progresso, as notas e as aulas concluídas de cada aluno — o mesmo tipo de acompanhamento que já existia com o Moodle e a Plataforma +A.
O aluno da WAID é ligado ao cliente do ERP pelo CPF, que é como a gente cadastra na plataforma. O e-mail entra apenas quando o cliente não tem CPF: na base há e-mail repetido em dezenas de clientes (família e clínica usando o mesmo endereço) e existem casos em que o e-mail do aluno pertence a outra pessoa — casar por e-mail gravaria o vínculo errado. Vagas temporárias ainda não ocupadas, que usam CPF provisório, ficam de fora.
A conferência dos clientes na WAID passou a usar uma única leitura da lista de alunos, em vez de uma consulta por cliente. Mais de mil clientes são conferidos em poucos segundos, contra vários minutos antes, e o resumo mostra quantos foram ligados pelo CPF, quantos não existem na plataforma e quantos estão sem CPF cadastrado.
Cada matrícula (aluno × produto) é gravada com produto, situação, data de início, data de expiração, progresso e nota média, já vinculada ao cliente, à venda e à plataforma educacional correspondentes.
São trazidas as aulas que o aluno concluiu (com módulo e conteúdo) e a nota de cada quiz realizado. A nota média do produto fica junto da matrícula, ao lado da nota mínima exigida para o certificado.
Nova tela lista aula por aula e quiz por quiz de cada aluno, com produto, módulo, nota, progresso no produto, nota média e situação da matrícula. Tem filtro por aluno, produto, módulo e período, agrupamento, média das notas no rodapé, exportação em CSV e botões para disparar a sincronização na hora.
A WAID passou a ter armazenamento próprio, separado das outras plataformas: as matrículas e o progresso não se misturam com os dados do Moodle nem com os da Plataforma +A.
A vinculação dos clientes roda às 01:30, as matrículas às 02:15 e o progresso às 03:15. A leitura do progresso é incremental: cada execução continua de onde a anterior parou, com sobreposição de segurança para não perder registro.
O acesso continua sendo pela chave e pelo token da WAID. Quando a plataforma recusa as credenciais, a rotina agora para com uma mensagem dizendo exatamente o que renovar, em vez de apenas registrar "Invalid access token provided" e seguir sem trazer nada.
O alerta que avisa os administradores quando o certificado digital da Focus NFe está perto de vencer nunca chegava a ninguém: a rotina comparava o CNPJ formatado da configuração com o CNPJ sem pontuação devolvido pela Focus, então nenhuma empresa era encontrada e a verificação terminava em silêncio. A comparação agora ignora a máscara e o aviso é disparado de novo.
Todos os dias às 02:00 o sistema consulta a validade do certificado na Focus NFe e notifica os super administradores quando faltam 15 dias ou menos, com mensagem distinta para certificado já expirado.
A quantidade de dias restantes aparece como número inteiro. Antes vinha com casas decimais ("expira em 86.59679361988425 dias").
Token recusado, empresa não localizada, CNPJ não configurado ou empresa sem certificado passam a ser registrados em log e sinalizados como erro, em vez de encerrarem a verificação sem qualquer aviso.
A verificação pode ser executada em modo de conferência, que apenas mostra a situação do certificado na tela sem notificar ninguém, útil para checar a validade fora do horário da rotina.
A tela "Registros Plataforma +A" passou a calcular a média das notas na própria listagem, agrupada por módulo, conteúdo ou aluno. Para conferir a certificação de um aluno não é mais necessário exportar planilha nem somar as unidades à mão.
O seletor de agrupamento da listagem oferece Módulo, Conteúdo e Aluno. Ao agrupar, os registros ficam separados por faixas recolhíveis — filtre o aluno e agrupe por Módulo para ver as unidades de cada módulo juntas.
Abaixo de cada grupo aparece a média das notas daquele módulo e quantas avaliações com nota entraram no cálculo. Aulas sem nota não entram na média. A média respeita os filtros aplicados e considera todos os registros do grupo, não só os da página atual.
Novo filtro "Recuperação" com as opções "Somente recuperação" e "Sem recuperação". Como as avaliações extras de recuperação puxam a média, é possível calcular o módulo apenas com as avaliações regulares ou olhar só as recuperações.
A exportação de Análise de Rescisões, Análise de Vendas, Vendas x Rescisões, Forecast de Caixa, Progresso de Vendas e Vendido x Recebido terminava com "ocorreu um erro ao gerar". A planilha já estava sendo montada corretamente; o que falhava era o aviso com o link de download.
As seis telas usam o mesmo processo em segundo plano para montar o Excel. Depois de gerar e salvar o arquivo, esse processo tentava criar o botão "Baixar Excel" usando um componente que a nova versão do painel não tem mais — o erro derrubava o processo no último passo e o usuário recebia o aviso de falha, apesar de a planilha estar pronta. O botão foi migrado para o componente atual e a notificação de sucesso chega normalmente.
No Vendido x Recebido, o Total vendido e as situações deixaram de ratear o valor do contrato e passaram a valer a soma real das parcelas. A parcela de cartão também deixou de ser contada toda de uma vez na autorização, e o Pago passou a exigir extrato conciliado.
O ERP baixa todas as parcelas do cartão na autorização, com a mesma data de pagamento, mas a operadora só repassa uma por mês. O card "Já quitado" passou a contar a parcela de cartão apenas quando o vencimento dela chega; até lá ela fica em "Ainda a vencer", junto do carnê. Boleto e cartão recorrente não mudaram — inclusive o pagamento antecipado continua contando como quitado.
Antes cada situação era uma fatia do valor do contrato, rateada pelas parcelas ainda vivas — e isso inflava quem tinha parcela cancelada. Uma venda de R$ 9.000 em que o cliente pagou uma única parcela de R$ 500 e teve 17 canceladas aparecia com R$ 9.000 "já quitados". Agora ela conta os R$ 500 que entraram de verdade. De setembro/2025 a junho/2026 no centro TSB, o Pago saiu de R$ 1.449.670,43 (51,1% do vendido) para R$ 657.386,21 (23,1%) — a diferença nunca foi dinheiro.
O nome mudou para deixar claro o que o card mede: parcela paga.
A parcela só conta como Paga se virou caixa dentro do período e num mês com extrato conciliado lançado. Baixa no ERP sozinha não basta: se o Já recebido do mês é zero por falta de extrato, o Pago também é. Filtrando só setembro/2025 no centro TSB, os dois cards agora mostram R$ 0,00, e a tela avisa que existem R$ 16.065,45 baixados no ERP aguardando o lançamento do extrato daquele mês.
O Total vendido passou a ser a soma das parcelas daquelas vendas, na mesma moeda das situações — ou seja, com os juros do parcelamento embutidos, acima do valor contratado. Ficam de fora apenas as parcelas pagas fora da janela, em outro período ou em mês sem extrato conciliado. Com isso as cinco situações somam exatamente o Total vendido: de setembro/2025 a junho/2026 no centro TSB são R$ 2.851.768,07, divididos em R$ 657.386,21 pagos, R$ 1.388.113,09 a vencer, R$ 51.005,83 vencidos sem pagamento, R$ 202.051,62 rescindidos e R$ 553.211,32 cancelados.
Um bloco novo desce do Pago até o Já recebido. De setembro/2025 a junho/2026 no centro TSB o Pago fecha em R$ 657.386,21 contra R$ 609.745,21 recebidos, e a diferença de R$ 47.641,00 é só defasagem de crédito: taxa da operadora, repasse em trânsito e boleto pago em fim de semana ou feriado, que o banco credita no dia útil seguinte.
Durante a publicação de uma nova versão o sistema deixa de exibir o erro "503 Serviço indisponível" e passa a mostrar uma tela explicando que a atualização está em andamento.
Enquanto o deploy roda, quem acessa o sistema vê uma página em português avisando que uma nova versão está sendo publicada e que o acesso volta sozinho em poucos minutos, em vez da mensagem técnica de erro do servidor.
A tela de manutenção se recarrega automaticamente a cada poucos segundos: assim que a publicação termina, o usuário cai direto no sistema sem precisar apertar F5 nem fechar o navegador.
Existe uma versão estática da mesma página, servida pelo Apache nos instantes em que o PHP está reiniciando e o sistema sequer é chamado — antes esse era justamente o momento em que aparecia o 503 cru.
O botão Cancelar Venda agora desliga a recorrência e estorna o cartão na Cielo, e vendas já canceladas com assinatura viva ganharam um botão para desativá-la.
O Cancelar Venda passou a usar exatamente o mesmo caminho dos botões do modal Status Cielo: desativa a assinatura quando a venda é recorrente, estorna as transações de cartão quando é crédito à vista dentro do prazo de 7 dias, cancela os boletos em aberto no Itaú e só então marca venda e parcelas como canceladas. Antes cada botão fazia um pedaço, e o cartão só era estornado por dentro do modal da Cielo.
Vendas canceladas antes da correção do endpoint da Cielo ficaram com a assinatura ativa e continuaram cobrando o cliente, sem nenhum botão disponível para desligá-la. O modal Status Cielo agora mostra a ação "Desativar recorrência" nesse caso: ela só encerra a assinatura na operadora, sem mexer na venda nem nas parcelas.
Vendas antigas guardam o identificador da assinatura na parcela, e a conta Cielo configurada ali nem sempre é a que criou a recorrência — a Cielo respondia 313 "Recurrent Payment not found" e a assinatura seguia cobrando. Agora o sistema consulta as contas Cielo cadastradas, identifica qual delas é a dona e só então desativa. O modal Status Cielo também passou a exibir essas assinaturas, que antes apareciam como "nenhuma transação registrada".
A confirmação do Cancelar Venda passou a descrever o efeito real daquele cancelamento — desativa recorrência, estorna cartão ou apenas cancela boletos — conforme a forma de pagamento da venda e o prazo de estorno.
Uma tela nova em Relatórios projeta quanto deve entrar nos próximos meses, separando o que já está contratado do que ainda depende de vender.
Cada mês futuro soma duas origens: as parcelas já contratadas que vencem nele, corrigidas pela taxa de recebimento, e o que as vendas ainda não feitas devem trazer. No horizonte de 6 meses, 73% da previsão vem da carteira e 27% depende de vender — a leitura que separa o risco comercial do risco de inadimplência.
A taxa de recebimento sai da média dos últimos seis meses fechados, e o crescimento das vendas sai da tendência do período. As duas ficam visíveis na tela e podem ser sobrescritas para simular outro cenário; em branco, voltam ao histórico. Cenários pessimista e otimista usam a pior e a melhor taxa já observada.
A tela mede quanto do contrato de uma venda entra em caixa no próprio mês, no mês seguinte e assim por diante, e usa essa curva para distribuir as vendas previstas ao longo do tempo. Cada idade é calculada só sobre as safras que já viveram aquele tempo, senão as vendas recentes achatariam a cauda.
A tela cruza o forecast com a projeção de entrada lançada pelo financeiro, mês a mês e no total, mostrando o desvio entre os dois palpites. E mede a própria acurácia: para cada mês já fechado, aplica a taxa média dos meses anteriores sobre o que venceu e compara com o que entrou de fato — hoje o erro médio é de 3,9%, com viés de 3,7% para baixo. Também traz o caixa acumulado do horizonte e uma matriz de sensibilidade cruzando taxa de recebimento com crescimento de vendas, para ver o quanto o número se mexe quando a premissa erra.
Horizonte de 3, 6 ou 12 meses e o mesmo filtro de centro de custo do Vendido x Recebido. Excel com sete abas (resumo, previsão mês a mês, taxa de recebimento, curva de maturação, vendas por mês, acurácia do modelo e sensibilidade) e PDF em paisagem com os indicadores, as tabelas e os seis gráficos.
A tela passou a contar a venda pela data em que a entrada foi paga — mesma régua do site do comercial — e ganhou gráficos por dia, resumo diário e a lista venda a venda.
A venda agora entra no período em que a 1ª parcela foi paga (antes era a data de cadastro no ERP) e os produtos de teste do gateway ficaram de fora. Em junho/2026 a tela fecha em 428 vendas e R$ 621.505,05 — exatamente o mesmo total, venda a venda, do relatório do site do comercial.
O único filtro é o período, sempre pela data de pagamento da entrada. Até três meses a tela mostra dia a dia; acima disso ela agrupa por mês sozinha, para o gráfico continuar legível.
Dois gráficos novos: venda total e entrada por dia com a linha da quantidade de vendas, e as vendas empilhadas por produto no mesmo eixo de tempo.
O "vendido" da curva de caixa passou a jogar a venda no mês em que a entrada foi paga (antes usava o pagamento mais antigo da venda, o que jogava para trás quem quitou uma parcela do meio antes da entrada) e também deixou os produtos de teste de fora. De janeiro a julho de 2026 os dois relatórios fecham no mesmo número em todos os meses, R$ 4.779.885,23 no acumulado.
O lado das vendas novas passou a usar a data em que a entrada foi paga, em vez da data de cadastro, e também ignora os produtos de teste. Com o recorte da Venda do Comercial, junho/2026 fecha em 428 vendas e R$ 621.505,05 — igual ao Progresso de Vendas e ao Vendido x Recebido. As rescisões continuam pela data da rescisão.
O card Diferença agora mostra o percentual do vendido que não virou caixa. A seção que antes mostrava "o que deveria entrar no próprio mês" passou a dividir o próprio Total vendido em quatro pedaços que somam exatamente ele: já quitado, ainda a vencer, vencido sem pagamento e rescindido. Em junho/2026, dos R$ 621.505,05 vendidos, R$ 289.332,73 (46,6%) já viraram dinheiro, R$ 326.995,82 (52,6%) ainda vão vencer e R$ 5.176,50 (0,8%) venceram sem pagamento.
Logo abaixo dos cards da execução do caixa, o valor do "Já recebido" passou a aparecer dividido entre a entrada da venda e as parcelas 2 em diante, com gráfico mês a mês e tabela por tipo de entrada. A divisão sai do próprio extrato conciliado: o tipo BOLETO AD é a adesão, os demais tipos são o carnê — e os dois somam exatamente o card verde. Em junho/2026, dos R$ 518.646,55 recebidos, R$ 93.926,92 (18,1%) são entrada e R$ 424.719,63 (81,9%) são carnê. A tela avisa que a entrada paga no cartão não vem marcada como AD no extrato e por isso cai em "demais parcelas". Vai também para o Excel e o PDF.
O ERP baixa todas as parcelas do cartão de crédito na autorização, com a mesma data de pagamento — 851 das 971 parcelas quitadas estavam marcadas antes do vencimento, o que empilhava a venda inteira num mês só. No gráfico de conciliação ERP x banco a parcela de cartão passou a entrar no mês do vencimento, que é quando a operadora repassa, e o desvio contra o extrato caiu de R$ 140,9 mil para R$ 57,5 mil no acumulado de 2026.
O Progresso de Vendas ganhou um filtro de produtos de múltipla escolha, com busca, que recorta cards, gráficos, resumo por dia e a lista venda a venda. A Curva de Caixa ganhou um filtro de centro de custo, que é o único eixo que o extrato bancário conhece: ele recorta as duas pontas de uma vez — o vendido pelas vendas dos produtos daquele centro e o recebido pelos lançamentos do extrato daquele centro. Filtrando o centro TSB em janeiro/2026, o recebido sai de R$ 72.223,25, que somava TSB e Academis, para R$ 67.923,19, o mesmo valor da tela de Conta Bancária Entradas com o mesmo filtro. O centro escolhido sai no cabeçalho do Excel e do PDF.
Abaixo dos gráficos, uma tabela por dia (vendas, venda total, entrada, ticket e os produtos do dia) e outra venda a venda com comprador, produto, vendedor, equipe, forma de pagamento, status, valor e 1ª parcela. As duas vão para o Excel e para o PDF.
Em Relatórios, uma tela nova coloca lado a lado o que o comercial vendeu e o dinheiro que realmente entrou no caixa/banco, mês a mês, mostrando quanto do vendido já virou dinheiro.
O recebido vem do extrato bancário conciliado pelo financeiro (boleto, boleto AD, Cielo e Cielo recorrente), batendo com a planilha de caixa, sem depender da baixa das parcelas no ERP.
Além do contrato inteiro, a tela mostra as parcelas que vencem em cada mês e o que aconteceu com elas: quantas foram quitadas, quantas venceram sem pagamento, quantas ainda vão vencer e quantas saíram por cancelamento ou rescisão.
Curva de vendido x recebido, acumulado, diferença mês a mês, entrada por tipo (rosca e empilhada), entrada por conta bancária, conciliação ERP x banco, projeção x realizado e vendido por categoria.
Excel com as abas de resumo, mês a mês, entradas por tipo e por conta; PDF em paisagem com os indicadores, as tabelas e todos os gráficos da tela.
Todo campo de e-mail de cadastro passa a conferir o endereço na Emailable antes de salvar, e uma nova tela mostra a saúde da base de e-mails por tipo de cadastro.
Ao sair do campo de e-mail, o sistema confere o endereço na Emailable. Cadastros novos com e-mail inexistente ou temporário/descartável são barrados; na edição o e-mail passa, apenas com aviso.
E-mails "arriscados" (servidor que aceita qualquer endereço, caixa cheia) e os que o servidor de destino não confirma passam com aviso, para não travar cliente real. Erros de digitação ganham sugestão de correção.
Em Relatórios, veja quantos e-mails são entregáveis, não entregáveis, arriscados ou ainda não verificados, com a quebra por tipo de cadastro (lead, cliente, dentista, usuário, fornecedor, liga ASB e outros) e filtros por origem, situação e domínio.
Na tela de qualidade dá para reverificar um e-mail ou vários selecionados, e exportar a lista para limpeza da base.
A tela de venda foi invertida: agora você informa primeiro o valor total e a quantidade de parcelas e depois escolhe os serviços. O sistema divide o valor entre os serviços sozinho e garante que tudo feche 100%.
Os campos Valor Total e Parcelas passaram para o topo da etapa. Informe R$ 2.000,00, selecione dois serviços e cada um recebe R$ 1.000,00 (50%) automaticamente.
Quando a divisão não é exata — como R$ 3.000,00 em três serviços — a diferença de centavos e de porcentagem fica no primeiro serviço, mantendo o total exato.
O campo Porcentagem passou a ser editável. Ao alterar a porcentagem (ou o valor) de um serviço, os serviços acima dele ficam travados e apenas os seguintes são recalculados, mantendo a proporção entre eles.
A soma dos serviços sempre fecha o valor total e 100%. Se algo ficar divergente, a venda não é salva e o sistema avisa qual é a diferença.
Nova tela no menu Educacional para enviar a Comenda de Reconhecimento aos dentistas dos alunos do TSB, em lote e sem depender de envio manual.
Filtre uma turma, selecione vários alunos de uma vez e envie a Comenda de Reconhecimento em PDF direto para o e-mail do dentista de cada um.
A tela mostra o nome e o e-mail do dentista cadastrados no cliente e sinaliza quem está com dados incompletos, evitando envios sem destinatário.
Cada envio fica registrado com data e responsável, mostrando o status de cada aluno (enviada, pendente ou dados incompletos), com possibilidade de reenvio manual.
A base tecnológica do sistema foi atualizada para as versões mais recentes, trazendo correções de segurança e mais estabilidade. As telas, menus e atalhos continuam exatamente iguais — nada muda na forma de usar.
As bibliotecas de geração de PDF, de planilhas Excel e demais componentes internos foram atualizadas para versões sem vulnerabilidades conhecidas, deixando o sistema mais seguro.
A estrutura interna do ERP passou para a geração mais nova, tornando o sistema mais estável e pronto para receber as próximas melhorias, sem alterar nenhuma tela ou fluxo já usado.
O Excel dos relatórios passou a ser gerado em segundo plano (não trava a tela) e os PDFs ganharam as cores das telas.
Ao clicar em Exportar Excel, o arquivo é gerado em segundo plano e você recebe uma notificação com o link de download quando fica pronto — sem travar a tela em relatórios grandes.
Os quatro relatórios em PDF passaram a seguir as cores dos indicadores (recebido em verde, a vencer em azul, vencido em vermelho, rescindido em cinza etc.), deixando a leitura mais fácil.
O Total previsto passou a considerar as parcelas rescindidas (contrato que virou perda), batendo com o valor contratado do financeiro.
O Total previsto agora soma as parcelas em aberto, pagas e rescindidas (exclui só as canceladas/renegociadas, que seriam duplicadas pelas novas parcelas). A parte rescindida aparece como perda na barra de execução. Com isso o Total previsto ficou praticamente igual ao valor contratado do financeiro.
Ajuste no cálculo da Execução do contrato para o já recebido e o a vencer baterem melhor com os números do financeiro.
O Já recebido passa a contar todo pagamento que entrou (inclusive de contratos depois rescindidos), aproximando-se da entrada do financeiro. O Ainda a vencer volta a somar as parcelas em aberto/pré-pagas a vencer (não mais contrato menos recebido, que distorcia ao filtrar por Data de pagamento). O Total previsto passa a ser a soma das parcelas ativas (exclui canceladas/rescindidas).
O Progresso de Vendas passou a considerar só a carteira ativa quando nenhum status de venda é escolhido, para o "a vencer" não contar o valor de contratos rescindidos/cancelados.
Sem status de venda selecionado, a tela considera apenas vendas ativas (exclui canceladas e rescindidas), pois contrato terminado não é "a receber". Isso corrige o Total previsto e o Ainda a vencer, que antes inflavam ao filtrar por Status da parcela. Para incluir canceladas/rescindidas, é só selecionar o status desejado no filtro Status da venda.
Agora os quatro relatórios exportam em PDF, com indicadores, gráficos e tabelas respeitando os filtros.
Progresso de Vendas e Vendas x Rescisões ganharam o Exportar PDF, no mesmo padrão de Análise de Vendas e Análise de Rescisões: cabeçalho com os filtros aplicados, indicadores, os gráficos capturados da tela e as tabelas de apoio.
O painel Execução do contrato passou a bater com o financeiro, calculando pelo valor contratado em vez de somar todas as parcelas.
Antes o Total previsto somava todas as linhas de parcela e inflava com parcelas canceladas/renegociadas, ficando acima do próprio contrato. Agora o Total previsto é o valor contratado e o Ainda a vencer é o saldo (contratado − recebido − vencido), de modo que recebido + vencido + a vencer = contrato — igual ao fechamento do financeiro.
A regra de recebido (boleto usa o valor efetivamente recebido; cartão usa o valor da parcela) passou a valer em todos os cálculos de recebido/quitado das telas de relatório.
Antes só o KPI Valor recebido (Análise de Vendas) e o Vendas x Rescisões seguiam a regra. Agora o gráfico venda nova x venda continuada, o Progresso de Vendas (execução e agenda) e o valor pago da Análise de Rescisões também usam o valor recebido para boleto e o valor da parcela para cartão.
Ajuste na forma como os relatórios reconhecem o que já foi recebido, para não inflar o valor com parcelas de cartão marcadas como pagas antes do vencimento.
Como o sistema marca a data de pagamento de todas as parcelas do cartão de uma vez, os relatórios passaram a contar como recebido apenas a parcela paga cujo vencimento já passou. As pagas com vencimento futuro entram como "a vencer/a receber". Vale para Análise de Vendas, Progresso de Vendas e Vendas x Rescisões (valor recebido, % de execução e as quitadas).
O filtro Data de pagamento chegou a mais duas telas, além dos botões para limpar os filtros de data.
Quando preenchida, a Data de pagamento passa a considerar como quitada/recebida apenas a parcela paga dentro da janela — afeta o valor recebido, o % de execução e as parcelas quitadas da matriz e do detalhe. Vazia = todas as quitadas.
A Data de pagamento recorta o valor recebido às parcelas pagas no intervalo, sem mexer nas vendas novas (data da venda) nem nas rescisões (data da rescisão).
Nas telas com filtro de data agora há botões para limpar o Período e a Data de pagamento, já que o seletor não permitia esvaziar o intervalo.
O filtro de período da Análise de Vendas agora deixa claro que é a data da venda, e ganhou um filtro separado de Data de pagamento.
O filtro Período analisado (data da venda) recorta as métricas de vendas pela data da venda. O novo filtro Data de pagamento recorta as métricas de recebimento (parcelas quitadas) pela data do pagamento — deixe vazio para considerar todos os pagamentos.
O filtro Forma de pagamento das telas de relatório passou a aceitar mais de uma forma ao mesmo tempo.
Em Análise de Vendas, Análise de Rescisões, Progresso de Vendas e Vendas x Rescisões dá para combinar boleto, cartão e demais formas no mesmo filtro. Deixar vazio traz todas.
Os relatórios que mostram o valor contratado passaram a mostrar também o valor recebido (soma das parcelas quitadas), para comparar o que foi fechado com o que já entrou.
Novo indicador Valor recebido ao lado do Valor contratado, com o percentual já quitado. Também aparece nos rankings/tabelas por equipe e vendedor e nas exportações Excel e PDF. (Progresso de Vendas e Análise de Rescisões já mostravam o valor recebido.)
Além do Status da venda, os relatórios ganharam o filtro Status da parcela para recortar por como as parcelas estão (quitada, em aberto, vencida, cancelada, rescindida).
O filtro mostra apenas as vendas que possuem ao menos uma parcela no status escolhido. Pode combinar vários status ao mesmo tempo e vale para todos os indicadores, gráficos e exportações da tela.
Novo relatório que compara, no mesmo período, o que entra em vendas novas contra o que sai por rescisão. E a tela Análise de Rescisões passou a exportar em Excel e PDF, como as outras.
Em Relatórios, um balanço da carteira: vendas novas (verde) contra rescisões (vermelho), saldo líquido, fluxo mês a mês e a comparação por vendedor e por produto — quem mais vende contra quem mais perde contrato. Filtros salvos no link.
A tela Análise de Rescisões ganhou os botões Exportar Excel (com abas de resumo, vendas rescindidas, rankings, categoria e produto) e Exportar PDF com os indicadores e gráficos, respeitando os filtros aplicados.
As telas Análise de Vendas, Análise de Rescisões e Progresso de Vendas passaram a guardar os filtros escolhidos no endereço da página, e ganharam filtro e gráfico por produto.
Ao escolher período, equipe, produto e demais filtros, o endereço da página é atualizado. Basta copiar e compartilhar o link para o outro usuário abrir o relatório já filtrado do mesmo jeito.
Além da categoria, agora dá para filtrar por um ou vários produtos e comparar os itens em um gráfico próprio — vendas por produto em Análise de Vendas e Progresso de Vendas, e taxa de rescisão por produto em Análise de Rescisões. Clicar na barra lista as vendas do produto.
A plataforma educacional passou a se chamar WAID. Todas as telas, menus e mensagens do ERP foram atualizadas para o nome novo.
O grupo Plataforma WAID reúne as telas Pessoas WAID, Turmas WAID, Vagas Temporárias e os consoles de API, com o mesmo conteúdo de antes.
Os endereços das telas não mudaram, então favoritos e atalhos guardados pelos usuários seguem abrindo normalmente.
A aba Dentista do cadastro de clientes passou a ter o campo CRO do Dentista, logo após o e-mail, para registrar o número de inscrição no Conselho Regional de Odontologia.
O CRO é opcional, aceita letras e números e é gravado em maiúsculas, junto dos demais dados do dentista.
Os leads que chegam pela API passaram a reconhecer novas fontes de tráfego. Além de Google, Facebook/Meta, Instagram e Bing, agora YouTube e TikTok também caem na origem correta em vez de virarem Site - Orgânico.
Leads com utm_source you_tube passam a entrar como YouTube Ads e os de tiktok como TikTok Ads, sem responsável definido, como já acontece com Facebook e Instagram.
Google continua em Google Ads, Facebook/Meta em Facebook, Instagram em Instagram, Bing em Bing Ads e qualquer outra fonte segue caindo em Site - Orgânico.
Nova tela em Relatórios que olha a venda pelo lado do parcelamento. Mostra quantas vendas existem em cada opção de 1x a 18x, o valor contratado e o ticket de cada plano, e acompanha cada etapa do parcelamento: quanto da 1ª, da 2ª, da 8ª parcela já foi quitado, quanto venceu sem pagamento, quanto ainda vai vencer e com quantos dias de atraso o cliente costuma pagar.
Cada opção de parcelamento praticada no período vira um card com vendas, valor contratado, ticket, valor da parcela e barra de execução. Clicando no card, a tela inteira passa a falar só daquele plano.
Uma matriz colorida cruza o plano contratado com o número da parcela e mostra o percentual já quitado de cada etapa. Clicando em uma célula aparece a listagem exata daquelas parcelas.
A curva de progresso e o detalhamento por parcela apontam a etapa com maior queda de quitação, a de maior inadimplência e a de maior atraso médio, com uma leitura em texto para cada parcela.
Mostra mês a mês o que está previsto, o que já foi quitado e o que venceu em aberto das vendas do período, além dos produtos vendidos em cada parcelamento e da forma de pagamento usada em cada plano.
As listagens de Clientes e de Vendas passaram a oferecer a coluna ID Lead, que mostra o identificador do lead que originou o cliente. A coluna vem desligada por padrão e pode ser ativada pelo seletor de colunas da tabela.
Com a coluna ativada é possível ver, direto na listagem, qual lead deu origem ao cliente e à venda, sem precisar abrir o cadastro.
A coluna pode ser usada na busca da tabela e na ordenação, facilitando localizar o cliente ou a venda a partir do número do lead.
Toda chamada de cadastro de lead pela API passou a ser registrada em um arquivo de log próprio, com os campos exatamente como o sistema de origem enviou, antes de qualquer tratamento do ERP. Isso permite conferir o que o site, o WordPress ou o Meta realmente mandaram quando um lead chega com dado faltando ou diferente do esperado.
O log guarda os campos recebidos e também o corpo cru da requisição, antes da limpeza de telefone, CPF e CNPJ e antes do nome ser convertido para maiúsculas.
Cada chamada recebe um identificador que aparece no registro de entrada e no registro de resultado, mostrando se o lead foi criado, atualizado ou recusado na validação, e quais campos foram gravados.
Os cabeçalhos da requisição ficam no log com os dados de autenticação substituídos por asteriscos. Os arquivos são diários e mantidos por 30 dias.
A importação dos arquivos CIELO03 e CIELO04 passou a guardar tudo o que a Cielo envia, e não apenas os recebimentos. Agora ficam registradas as unidades de recebível (URs), as garantias (gravames), cessões, cancelamentos, tarifas, taxas em percentual, canal e terminal da venda, domicílio bancário e o totalizador do arquivo. As telas "Extrato Cielo" e "Extrato Cielo - Detalhado" foram refeitas com totalizadores coloridos, conferência automática com a Cielo e um painel com o detalhe completo de cada lançamento.
Cartões no topo mostram valor bruto, taxas, líquido, quantidade de lançamentos e o total por natureza (vendas, ajustes, cancelamentos, garantias e negociações), sempre respeitando os filtros aplicados.
Cada extrato compara a soma dos registros importados com o totalizador enviado pela Cielo e sinaliza em verde quando confere, ou mostra a diferença exata quando não bate.
O arquivo CIELO04 passou a exibir uma aba com as URs pagas: valor bruto, taxa, líquido, data de pagamento, envio ao banco e domicílio bancário de cada uma.
A ação "Detalhes do lançamento" abre todos os dados do registro: taxas em percentual, cartão mascarado, canal e terminal da venda, tipo de captura, motivo do ajuste, datas de captura e vencimento e a linha original do arquivo.
Passou a ser possível filtrar por natureza do lançamento, bandeira, canal da venda, tipo de captura, período de captura e por lançamentos ainda não conciliados com parcelas do ERP.
Tipos de lançamento, status de pagamento, bandeiras, formas de pagamento e motivos de ajuste passaram a usar as tabelas oficiais da versão 15 do extrato, corrigindo descrições que apareciam trocadas.
Em venda mista (cartão + boleto), a venda continua com status "Realizado" enquanto houver boleto em aberto. Por causa disso o link de pagamento seguia aceitando um novo envio dos dados do cartão depois da cobrança já aprovada, e o cliente era cobrado outra vez pelo mesmo valor. O link passou a reconhecer a parte em cartão já paga e não envia mais nada à operadora nesse caso.
Ao reabrir ou reenviar o link de uma venda mista com o cartão já aprovado, o sistema avisa que a parte em cartão já foi paga em vez de disparar uma nova cobrança.
A tela do link passou a somar somente as parcelas de cartão ainda em aberto, então o valor exibido corresponde ao que realmente será cobrado.
Quando a venda mista já tem assinatura recorrente ativa na operadora, um novo envio do link deixa de criar uma segunda recorrência para o mesmo cliente.
Os filtros "Nome" e "CPF Usuário" da tela "Registros Moodle" deixaram de exigir que o texto fosse digitado exatamente como está cadastrado. Agora a busca por nome ignora maiúsculas, minúsculas e acentos, e aceita as palavras em qualquer ordem. A busca por CPF funciona com ou sem pontos e traço, e também com trechos parciais do número.
Digitar "jose", "JOSÉ" ou "José" retorna os mesmos alunos: a comparação passou a desconsiderar caixa alta/baixa e acentuação.
Buscar "silva maria" encontra "MARIA DA SILVA": cada palavra digitada é procurada dentro do nome, sem precisar seguir a ordem do cadastro.
É possível pesquisar "063.989.619-78", "06398961978" ou apenas parte do número — a pontuação é ignorada na comparação.
Até agora, alunos suspensos no Moodle ficavam de fora da tela "Registros Moodle" — quem procurasse por eles não encontrava nada, mesmo tendo notas e cursos lançados na plataforma. A sincronização passou a trazer também esses alunos, e a tela ganhou a coluna "Situação" (Ativo ou Suspenso) junto de um filtro para separar os dois grupos. Alunos excluídos do Moodle continuam fora, como antes.
A sincronização deixou de ignorar alunos suspensos: notas, cursos e datas de acesso desses alunos passam a ser consultáveis na tela.
Cada aluno exibe uma marcação indicando se está Ativo (verde) ou Suspenso (vermelho) na plataforma.
O filtro "Situação" permite listar todos, somente ativos ou somente suspensos.
O menu Relatórios ganhou a tela "Análise de Vendas", um painel completo do desempenho comercial: indicadores, gráficos interativos com detalhamento ao clicar, insights automáticos e rankings de equipes e vendedores. O grande destaque é o painel que separa o dinheiro recebido entre VENDA NOVA (1ª parcela, venda fechada agora) e VENDA CONTINUADA (demais parcelas, vendas que já aconteceram), com barra de proporção para leitura imediata. A tela abre com o mês atual selecionado e, quando o período é de um único mês, os gráficos de evolução passam automaticamente para visão dia a dia. Tudo pode ser filtrado por período, equipes em conjunto, vendedores, forma de pagamento, status e categoria — e exportado para Excel e PDF.
Painel destacado separa o recebimento entre venda nova (1ª parcela) e venda continuada (demais parcelas), com valores, quantidades, percentuais e barra de proporção.
A tela abre já filtrada no mês atual; ao selecionar um período de um único mês, os gráficos de evolução mudam automaticamente para comparação dia a dia.
Período, equipes em conjunto, vendedores individuais ou em grupo, forma de pagamento, status da venda e categoria do produto — todos os gráficos, indicadores e exportações respeitam os filtros.
Clique em qualquer barra ou ponto dos gráficos para abrir a listagem das vendas ou parcelas correspondentes, com evolução mensal, equipes, vendedores, ticket médio, categorias e mais.
Excel com abas de resumo, vendas do período, recebimentos mês a mês e rankings; PDF pronto para apresentação com indicadores, insights e tabelas consolidadas.
A tela "Registros Plataforma +A" ganhou o botão "Sincronizar com a Plataforma +A", que dispara a verificação e integração dos dados sob demanda, em segundo plano. A rotina automática que rodava sozinha de hora em hora foi desativada — como a integração só funciona dentro da empresa (onde o IP é liberado), a execução automática gerava erros repetidos. Agora a sincronização acontece quando você aciona o botão.
Um clique no botão dispara a verificação e integração dos itens de progresso da Plataforma +A; o processo roda em segundo plano e os novos registros aparecem ao concluir.
A execução automática de hora em hora foi removida, encerrando as falhas repetidas que ocorriam quando a integração rodava fora do ambiente com IP liberado.
A geração dos arquivos da tela "Registros Plataforma +A" foi reescrita para gravar o CSV linha a linha (streaming), mantendo o uso de memória constante mesmo com centenas de milhares de registros. Antes, bases grandes chegavam a consumir mais de 1 GB de memória e reiniciavam o processador de filas em loop; agora a mesma exportação de ~164 mil linhas roda em poucos segundos com uso mínimo de memória. Os filtros e a ordenação aplicados na tela continuam sendo respeitados na exportação.
O arquivo é escrito registro a registro direto no disco, sem carregar a planilha inteira na memória — acabou o consumo excessivo e o travamento em exportações grandes.
A exportação usa exatamente os filtros e a ordenação que você aplicou na tela, gerando apenas o subconjunto desejado.
As quatro exportações da tela "Registros Plataforma +A" (XLSX, CSV, Notas em CSV e Progresso em CSV) agora são processadas em segundo plano, sem travar a tela nem dar timeout em bases grandes. Ao clicar em exportar, o arquivo entra em uma fila e, assim que fica pronto, você recebe uma notificação com o botão de download no sino de notificações.
A geração do arquivo passa a rodar em fila (job), então grandes volumes de registros não travam mais a página nem estouram o tempo limite.
Ao concluir, uma notificação com link de download aparece no sino do painel — é só clicar em Baixar.
Ao criar ou editar um lead pela API (api/leads), o sistema passa a gerar/atualizar automaticamente o contato no Digisac, seguindo as regras de origem: leads de meta/instagram vão para o departamento "Central de relacionamento" e os demais (google/bing/orgânico) para "Site". E-mail e todas as UTMs são gravados como campos personalizados do contato. O envio é enfileirado, então não afeta o tempo de resposta da API nem interrompe o cadastro do lead caso o Digisac esteja indisponível.
Cada lead novo ou editado cria/atualiza o contato correspondente no Digisac, com departamento definido pela origem do lead.
E-mail e todas as UTMs (source, medium, campaign, term, content, gclid, fbclid e url de conversão) são enviados como campos personalizados, criados no Digisac quando ainda não existirem.
Novo portal público em /portal-aluno que centraliza todos os serviços do aluno em um só lugar: Financeiro (boletos, PIX e notas fiscais), Gerenciador de Arquivos, Documentos da Turma, Declaração de Matrícula, Pedido de Estágio e Biblioteca. O aluno informa o CPF/CNPJ uma única vez (com proteção reCAPTCHA) e navega por todas as áreas sem precisar se identificar novamente. As rotas antigas continuam funcionando normalmente.
Login único com validação reCAPTCHA libera todas as áreas do portal na mesma sessão.
Financeiro, arquivos, documentos da turma, declaração de matrícula, pedido de estágio e biblioteca reunidos em um layout moderno e responsivo.
Botões de WhatsApp para Suporte e Financeiro configuráveis pelo .env (PORTAL_ALUNO_WHATSAPP_SUPORTE e PORTAL_ALUNO_WHATSAPP_FINANCEIRO), com código do país adicionado automaticamente para funcionar também no celular.
A tela Lead Mkt Tracking agora mostra quem originou cada registro de histórico de marketing. Novos registros gravam automaticamente o usuário responsável (ou o usuário de API quando vindo por integração), e os registros antigos foram preenchidos com o criador do próprio lead.
A listagem exibe o nome do usuário que gerou cada registro de tracking.
Novo filtro no topo da tela permite ver apenas os registros criados por um ou mais usuários.
Ao cadastrar um cliente, o sistema agora busca automaticamente por um lead com os mesmos dados enquanto você preenche CPF, CNPJ, email ou telefones. Se encontrar um lead ainda não convertido, um aviso é exibido e o vínculo (cliente ↔ lead) é feito automaticamente ao salvar, preservando o histórico de marketing do lead (origem, UTMs, etc). A base antiga também pode ser reprocessada para vincular clientes já cadastrados aos seus leads de origem.
Ao sair do campo CPF, CNPJ, email ou telefone, o sistema procura um lead correspondente (prioridade: CPF, CNPJ, email, telefones) e avisa que ele será vinculado automaticamente ao salvar.
Quando mais de um lead corresponde aos dados digitados, uma janela lista os candidatos para você escolher qual vincular — ou optar por não vincular nenhum.
Novo comando clientes:vincular-leads percorre os clientes sem lead vinculado e cria o vínculo quando há exatamente um lead correspondente, reportando os casos ambíguos para revisão manual.
A tela de Disparos SMS (Relatórios) agora identifica o tipo de cada envio: Lembrete (aviso de boleto a vencer), Cobrança (boleto em atraso) ou Regularização (comunicação do incidente de 13/04/2026, mantida apenas como histórico). Os novos disparos já são gravados com o tipo na origem, e o histórico antigo foi classificado retroativamente a partir do texto da mensagem enviada. A estrutura temporária do incidente (comando de envio, serviço e a tela "Parcelas Afetadas Incidente") foi removida do sistema.
Cada linha exibe o tipo do disparo com cor própria: Lembrete (azul), Cobrança (vermelho) e Regularização (amarelo).
Novo filtro no topo da tela permite ver apenas os disparos de um tipo específico.
Corrigido erro que interrompia o envio diário de lembretes de boleto (email + SMS) desde 07/02 (formato de data no email) e o corte no meio do lote de SMS de cobrança (tempo limite do processamento ampliado).
Nova tela no grupo Leads que confronta os leads de marketing em três lugares: o sistema (somando ASB/erp2 + TSB/ineo), o WordPress do site ASB e o export do site TSB. Por período (intervalo de datas livre), mostra os totalizadores de cada fonte e, principalmente, o "vazamento": leads que o site captou e que NÃO chegaram ao sistema. Para não acusar falso vazamento, um lead do site é considerado presente se já existe no sistema em qualquer data (não só no período), e o cruzamento por telefone tolera o 9º dígito.
Cartões com a quantidade de leads no Sistema (ASB + TSB), no site ASB e no site TSB no período, mais a cobertura: quantos dos leads dos sites já estão no sistema.
Abas ASB e TSB listam exatamente os leads captados pelos sites que faltam no sistema, cruzando por e-mail OU telefone (telefone tolerante ao 9º dígito) contra toda a base do sistema.
A tela de Leads agora mostra, ao final da página, um painel com a quantidade de leads agrupada por origem. Os totais respeitam os filtros e a busca ativos (por exemplo, um período): só aparecem as origens que tiverem leads dentro do recorte, ordenadas da maior para a menor, e origens zeradas não são exibidas.
Painel recolhível no rodapé da lista de Leads com a contagem por origem e o total geral, atualizando conforme os filtros aplicados.
Origens sem nenhum lead no período/filtro não aparecem, evitando poluição visual mesmo com dezenas de origens cadastradas.
Nova tela "Lead Mkt Tracking" no grupo Leads com o histórico completo dos dados de marketing de cada lead (origem, URL de conversão, GCLID, FBCLID, UTMs, IP, User Agent, Meta Lead ID e CTWA CLID). A primeira gravação acontece junto com o cadastro do lead e, a cada nova edição com dados de marketing, um novo registro é guardado sem sobrescrever os campos originais do lead.
Lista todos os registros de marketing dos leads, permitindo ver várias passagens do mesmo lead e filtrar por lead, origem, UTM Source, UTM Campaign e data.
Os campos de marketing do lead nunca são sobrescritos em edições; cada novo envio gera um registro histórico, mantendo o rastreio completo da jornada.
Novo fluxo no grupo Cobrança para tratar parcelas rescindidas. A base agrupa por venda todas as parcelas rescindidas, mostra valor total, valor pago e saldo rescindido, distribui os clientes entre os cobradores e permite gerar uma nova venda negociada vinculada à venda rescindida para acompanhar a recuperação.
Cria a base filtrando por vencimento das parcelas rescindidas. Ao achar uma parcela rescindida de uma venda, traz todas as demais rescindidas dela, com valor total da venda, valor pago e valor rescindido (saldo devedor).
Após alguns dias de operação, reembaralha os clientes entre os cobradores garantindo que nenhum cliente permaneça com o usuário que o cobra atualmente.
Quando o cobrador negocia o saldo rescindido, gera uma nova venda parcelada vinculada à venda rescindida. A venda original permanece rescindida e o acompanhamento mostra quanto já foi recuperado.
Novos botões na tela de Leads para exportar a lista completa de contatos (nome, telefone e email) de leads e de clientes. A geração roda em segundo plano e o arquivo fica disponível para download por notificação ao concluir.
Gera, em segundo plano, um arquivo CSV com nome, telefone e email de todos os leads cadastrados.
Gera, em segundo plano, um arquivo CSV com nome, telefone e email de todos os clientes que já tiveram pelo menos uma parcela paga.
Novo item no menu Comercial que exibe o relatório de Performance Marketing ASB/TSB diretamente dentro do ERP.
No grupo Comercial, a tela "Performance Marketing ASB/TSB" carrega o relatório de marketing embutido, sem precisar sair do sistema.
Nova ação na listagem de Vendas pagas com cartão que reúne, em linguagem clara, todas as tentativas de cobrança feitas na Cielo, explicando o motivo de cada recusa.
Disponível nas vendas com pagamento em cartão, exibe em um modal cada tentativa enviada à Cielo (data, valor, parcelas, bandeira e cartão) e se foi aprovada ou recusada.
O código de retorno da Cielo é traduzido automaticamente pela tabela de erros do centralizador, mostrando a mensagem e a orientação correspondente para cada recusa.
Quando o cartão é recusado no link de pagamento, o cliente passa a ver o motivo detalhado (causa, orientação e código Cielo) em vez de uma mensagem genérica. A bandeira do cartão agora é reconhecida corretamente e a recorrência também passa a explicar a recusa.
Corrigido o erro de conversão para o XML Nacional ("Tag <CSTPisCofins> não informada") que ocorria ao emitir NFS-e de clientes com retenção de imposto federal na fonte.
A NFS-e passa a informar o CST do PIS/COFINS (situação tributária), campo exigido pelo padrão nacional sempre que a nota tem retenção federal. Notas de clientes PJ com IR retido na fonte voltam a ser emitidas normalmente.
A tela Saldos API agora permite cadastrar e-mails e um limite mínimo; quando o saldo de alguma API fica abaixo desse limite, um aviso é enviado por e-mail automaticamente.
Na tela Saldos API é possível informar os e-mails que receberão o aviso e o valor mínimo (ex.: 300) a partir do qual o saldo é considerado baixo.
Uma verificação diária consulta o saldo das APIs e, se algum estiver abaixo do limite, envia um e-mail de alerta aos destinatários cadastrados.
Migração do histórico do Digisac para dentro do sistema: backup completo da API (contatos, chamados e mensagens) e uma nova ação na listagem de Leads para ver toda a conversa pelo telefone.
Nova ação na listagem de Leads que busca pelo telefone e exibe, em um modal estilo chat, o contato, os chamados e as mensagens trocadas, lidos do backup local.
O comando de backup passa a trazer contatos, chamados e mensagens de forma paginada e retomável, guardando tudo no banco próprio para não depender mais do Digisac.
O dashboard de Análise de Rescisões agora permite clicar nos gráficos para ver a listagem dos casos, além de novos gráficos de clientes reincidentes e de rescisão por categoria do produto.
Ao clicar em qualquer barra ou ponto dos gráficos, uma tabela paginada aparece abaixo listando as vendas e parcelas daquele recorte, com cliente, vencimento, valor e status.
Novo gráfico mostra quantos clientes rescindiram 1, 2 ou 3+ vendas diferentes, ajudando a identificar reincidência de inadimplência.
Novo gráfico compara a taxa de rescisão entre as categorias de produto vendidas, revelando quais categorias concentram mais perdas.
Nova tela em Relatórios que mostra em qual parcela os clientes param de pagar, o impacto financeiro das rescisões e diversos comparativos com filtros por período e forma de pagamento.
Gráfico principal mostra a primeira parcela rescindida de cada venda, revelando onde a inadimplência definitiva começa, além da taxa de rescisão por posição da parcela.
Indicadores de valor não recebido, valor pago antes da rescisão, perda média por venda e evolução mensal das rescisões com base na data de rescisão.
A tela gera conclusões automáticas sobre os padrões de rescisão e exibe os rankings de equipes e vendedores com mais vendas rescindidas, com taxa e valor perdido.
O sistema passou a aceitar o novo formato de CNPJ alfanumérico da Receita Federal, mantendo total compatibilidade com os CNPJs antigos somente numéricos em cadastros, buscas e validações.
Os formulários de clientes, leads e fornecedores agora permitem digitar e validar o CNPJ no novo formato alfanumérico, sem deixar de aceitar os CNPJs antigos.
As consultas por CPF/CNPJ no painel e nas telas públicas deixaram de remover as letras do documento, encontrando corretamente os clientes com CNPJ no novo formato.
A verificação do dígito do CNPJ foi atualizada para o cálculo oficial alfanumérico, continuando a validar normalmente os CNPJs numéricos já existentes.
O painel ganhou uma nova visão de alunos da Plataforma +A, com exportação em planilha e complemento automático de dados cadastrais usando o DW e o banco do ERP.
A área de Relatórios agora conta com uma listagem específica de alunos da Plataforma +A, separada do relatório de progresso.
Quando o DW não traz todas as informações do aluno, o sistema busca complemento no cadastro local usando e-mail e documento para montar a visão do relatório.
A nova exportação em planilha segue a estrutura esperada para nome, contato, documento, departamento e datas de compra e expiração.
A extração da Plataforma +A passou a considerar também os blocos manuais de práticas integradas salvos no DW, evitando que essas notas fiquem de fora do relatório.
O relatório agora traz as notas lançadas manualmente nas categorias de práticas integradas do DW, além das notas vinculadas a tópicos comuns do curso.
A origem das notas passou a ser identificada com uma chave própria, permitindo reprocessar a carga com estabilidade tanto para tópicos quanto para categorias manuais.
A tela de Registros Plataforma +A agora oferece uma exportação em CSV alinhada à visualização montada pelo usuário na listagem.
A nova opção Exportar em CSV respeita as colunas exibidas na tela, facilitando gerar arquivos sob medida para cada consulta.
As telas públicas de consulta e solicitação por CPF ou CNPJ foram ajustadas para evitar bloqueios de link expirado quando abertas a partir de outros sistemas.
A consulta e a solicitação de nova declaração passaram a aceitar melhor acessos iniciados fora do sistema principal, reduzindo erros de link expirado.
O fluxo público de pedido de estágio foi alinhado para funcionar com mais consistência quando acessado por integrações e janelas externas.
As telas de financeiro, boletos, documentos da turma e gerenciador de arquivos também foram preparadas para reduzir falhas de validação em acessos externos.
A tela da Plataforma +A agora passa a mostrar também o progresso total do aluno no curso, desconsiderando tópicos deletados, não visíveis e agrupadores estruturais.
O relatório exibe separadamente o progresso total do aluno no curso, além do progresso já fornecido pela plataforma.
O progresso total considera os tópicos do conteúdo ignorando itens deletados, não visíveis e também grupos de módulos usados apenas como agrupadores.
O CSV de progresso agora leva tanto o progresso atual da plataforma quanto o progresso total calculado para análise operacional.
As ações operacionais da Curseduca ficaram mais consistentes, com consulta reaproveitada entre telas e cadastro manual voltando a salvar corretamente a turma do cliente.
Ao usar a ação de cadastro na página Pessoas Curseduca, a turma selecionada agora é persistida corretamente no cliente.
A ação Plataforma Educacional agora segue o mesmo comportamento nas telas de Declarações de Matrícula e Pessoas Curseduca, facilitando a consulta do aluno na Curseduca.
A tela Pessoas Curseduca agora exibe também o nome da turma do cliente, além do ID, facilitando a identificação na listagem.
As vendas recorrentes via Cielo passaram a guardar os identificadores exigidos pela Mastercard e a registrar melhor o vínculo da transação inicial com as cobranças futuras.
As respostas da Cielo agora salvam automaticamente os identificadores Mastercard usados para rastrear a transação inicial e suas cobranças relacionadas.
A criação da primeira cobrança recorrente Mastercard passou a enviar a identificação de transação iniciada pelo cliente, preparando o fluxo para os mandates da bandeira.
As consultas de recorrência na Cielo agora registram também os identificadores retornados nas reconsultas por PaymentId, facilitando auditoria e evolução futura do fluxo MIT.
As vendas recorrentes via iPag passaram a cobrar a primeira parcela no ato da adesão, responder a confirmação com mais rapidez para o cliente e concluir a vinculação das próximas cobranças automaticamente por callback.
A recorrência via iPag agora cria a assinatura junto com a transação inicial em cartão, permitindo confirmar imediatamente a primeira parcela no fluxo da venda.
As parcelas futuras da recorrência iPag passam a respeitar as datas já definidas na venda, evitando regravação automática de vencimentos após a adesão.
O recebimento dos callbacks da iPag ganhou validação de assinatura e sincronização mais segura das parcelas recorrentes pagas.
Quando a primeira cobrança é aprovada antes do identificador da recorrência chegar, o sistema conclui a venda e vincula a assinatura automaticamente assim que o callback da iPag informa o subscription id.
A tela de pagamento deixa de aguardar a consulta completa da recorrência na iPag durante o checkout, reduzindo risco de timeout após a cobrança inicial aprovada.
Os campos de seleção pesquisáveis do painel passaram a abrir suas listas corretamente por cima da interface, a exibir mensagens padronizadas em português quando não houver opções disponíveis e a permitir compartilhamento de filtros em páginas administrativas por link.
Os selects pesquisáveis agora mantêm a lista de opções visível acima de sections, cards e repeaters, reduzindo falhas visuais em formulários do sistema.
Os campos pesquisáveis deixaram de exibir a chave interna do Filament e agora mostram uma mensagem clara quando não houver opções para selecionar.
A tela de Emitir Nota Fiscal agora reflete filtros, busca e ordenação na URL, facilitando compartilhar a mesma visualização com outros usuários.
O acesso do aluno voltou a funcionar ao consultar CPF ou CNPJ, mesmo após a inclusão dos novos campos de produto.
O Gerenciador de Arquivos agora identifica os produtos comprados sem disparar erro de SQL ao lidar com campos JSON do cadastro.
O sistema ganhou uma ambientação especial de Festa Junina no painel, com ativação separada e refinamentos visuais para aplicar o tema sazonal só quando desejar.
O painel agora exibe paleta junina com tons quentes, detalhes inspirados em tecido e acabamento visual mais festivo nas áreas principais.
Foram adicionados bandeirinhas integradas ao topo, fogueira animada ao lado da logo e realces visuais em menus, cartões e telas de acesso para reforçar o clima junino brasileiro.
A ambientação junina ficou separada do tema padrão do Filament, permitindo alternar entre o visual normal e o temático por configuração, com alinhamento do topo e do menu lateral ajustado para manter a navegação consistente.
O cadastro de produtos agora permite definir quais dias de vencimento em boleto podem ser usados nas parcelas de cada serviço.
Cada produto passou a ter sua própria seleção de dias permitidos para vencimento em boleto, com suporte a qualquer dia do mês e padrão inicial em 10, 20 e 30.
Na venda, os vencimentos em boleto agora respeitam automaticamente os dias em comum entre os produtos selecionados e, quando a venda é mista, o total de parcelas passa a usar o menor limite entre boleto e cartão configurado no produto.
A integração de leads ficou mais tolerante com números de celular antigos e evita salvar telefones inválidos.
Quando a API identifica um celular enviado no formato antigo com DDD e 8 dígitos, o sistema completa automaticamente o 9º dígito antes de salvar ou atualizar o lead.
Telefones que continuam inválidos após a normalização deixam de ser gravados, reduzindo inconsistências no cadastro de leads.
Os produtos agora podem ser vinculados a uma categoria centralizada diretamente no cadastro, facilitando a organização comercial.
Foi criada a base centralizada de categorias de produto com opções prontas para uso no fluxo comercial.
O cadastro de produtos agora exibe um campo para escolher a categoria do produto e também permite visualizar e filtrar essa informação na listagem.
O menu Configurações agora permite administrar em tela as origens e etapas usadas no funil de leads.
Foi adicionada uma tela para cadastrar, editar, ativar e ordenar as origens de lead sem depender de ajuste manual em código.
As etapas do funil agora podem ser administradas no menu Configurações, com controle de ordem, probabilidade, status ativo e exibição no Kanban.
Foram corrigidos textos com problema de codificação em rotas de apoio, páginas legadas e no histórico de novidades, preservando a acentuação em português do Brasil.
Mensagens de boleto, telas legadas de inscrição e textos de apoio voltaram a exibir acentuação correta para o usuário.
Logs auxiliares, labels administrativos e entradas do changelog tiveram a codificação ajustada para evitar caracteres corrompidos no sistema.
As telas e PDFs de declaração de matrícula e pedido de estágio passaram a usar uma origem estável para a logo do projeto, evitando falha de exibição no canto superior esquerdo em diferentes ambientes.
O layout do PDF de pedido de estágio foi ajustado para concentrar o conteúdo em uma única página, com melhor distribuição de espaços e leitura mais direta.
O sistema agora conta com uma estrutura própria para solicitação, emissão e acompanhamento de pedido de estágio pelo aluno e pela equipe administrativa, com fluxo público separado entre consulta e resultado.
O aluno pode consultar o CPF ou CNPJ, acompanhar solicitações anteriores e abrir um novo pedido de estágio em uma área pública própria.
A equipe passou a contar com uma tela dedicada no Filament para consultar a plataforma educacional, emitir o PDF, negar solicitações e reenviar o e-mail do pedido.
O pedido de estágio é emitido em PDF com link de validação, QR Code e prazo de validade para conferência externa.
As telas públicas e os PDFs de declaração de matrícula e pedido de estágio agora exibem a logo do projeto à esquerda e a logo da ABO à direita.
Os links de download de declaração de matrícula e pedido de estágio agora geram o PDF sob demanda com base nos dados do registro, sem depender do arquivo físico já existir no storage do ambiente.
O cadastro de turmas agora permite anexar vários arquivos PDF diretamente no formulário da turma e disponibilizar esses documentos ao aluno em uma área pública com validação.
Foi adicionada uma estrutura de documentos no cadastro da turma para incluir múltiplos arquivos em PDF no mesmo registro.
Cada documento pode ser salvo com título e descrição para facilitar a organização dos anexos da turma.
Os documentos da turma agora podem ser acessados pelo aluno em uma página pública após validação do CPF ou CNPJ e confirmação do Google reCAPTCHA.
Parcelas em boleto agora entram na regra de rescisão também no exato 54º dia de atraso, sem precisar aguardar um dia a mais.
A comparação da data foi ajustada para considerar parcelas com exatamente 54 dias de atraso na rotina de rescisão automática.
O painel agora conta com uma visão específica para acompanhar os itens importados da +A com filtros mais práticos para auditoria e conferência.
Foi adicionada uma listagem própria em Relatórios para consultar os registros detalhados importados da +A sem misturar com o relatório antigo do Moodle.
A nova tela permite filtrar por aluno, e-mail, conteúdo, módulo, aula e datas, incluindo listas prontas para seleção dos valores importados da plataforma.
A visualização do relatório mostra as notas da +A sem forçar zeros desnecessários, mantendo as casas decimais relevantes para conferência.
O relatório da Plataforma +A agora permite exportar as notas em CSV no mesmo formato esperado para compartilhamento e processamento externo.
A tela da Plataforma +A agora também permite exportar nome do aluno, e-mail e progresso em CSV para uso operacional e integrações externas.
A estrutura da Plataforma +A passa a armazenar também o progresso consolidado do aluno no curso, usando o percentual disponibilizado pelo DW da plataforma.
A tela de boleto agora mostra melhor os retornos da integração e também recupera títulos já existentes no Itaú quando a parcela local ficou sem conciliação completa.
Ao falhar na geração do boleto, o sistema passa a exibir a mensagem específica devolvida pelo Itaú sem repetir o detalhe e com quebra de linha para facilitar a identificação do problema.
Quando o Itaú já tiver o boleto cadastrado, o sistema volta a reconhecer o título correto mesmo com vencimento ajustado para o próximo dia útil e preenche os dados locais faltantes.
A URL da Biblioteca Digital agora funciona em acesso público com validação por e-mail do cliente e proteção por reCAPTCHA.
A rota biblioteca exibe uma tela de acesso para o cliente informar o e-mail antes do redirecionamento SSO.
A integração utiliza CHAVE_PLATAFORMA_BIBLIOTECA e SEGREDO_PLATAFORMA_BIBLIOTECA para montar o token de segurança diário.
O sistema consulta a tabela de clientes pelo e-mail informado, usa o nome cadastrado e só libera o acesso quando encontrar o registro.
A tela pública da biblioteca exige validação do Google reCAPTCHA antes de processar o acesso.
Links incorporados em domínio externo agora mantêm a sessão e permitem consultar CPF normalmente.
Os cookies de sessão passaram a usar SameSite=None com Secure ativo para funcionar corretamente em páginas incorporadas.
O preenchimento do valor fixo no split agora salva corretamente o valor em reais.
Ao informar valores como 45 no split do produto, o sistema deixa de salvar como 0,45 e passa a persistir o valor correto.
A exportação em PDF agora aproveita melhor o espaço horizontal quando a tabela possui muitas colunas.
Relatórios com muitas colunas passam a usar espaçamentos, fontes e cabeçalho em modo compacto para exibir mais conteúdo na mesma página.
O layout compacto é aplicado automaticamente quando a exportação possui 9 ou mais colunas.
A exportação em PDF reforça a conversão de datas para dia/mês/ano, incluindo variações comuns de formato.
O download agrupado agora entrega imagens e documentos PDF diretamente em um único arquivo para conferência.
Arquivos PDF selecionados passam a compor o PDF agrupado junto das imagens, mantendo todas as páginas.
O agrupamento selecionado agora baixa diretamente como PDF, sem repetir os documentos dentro de um ZIP.
PDFs compactados ou com inconsistências recuperáveis, imagens HEIC/HEIF, PNG ou com extensão divergente agora são compatibilizados no agrupamento e na visualização.
Arquivos HEIC/HEIF com variações de leitura agora usam fallbacks adicionais no servidor para evitar falhas ao montar o PDF agrupado.
A visualização do gerenciador agora oferece abertura do arquivo original em nova aba mesmo quando o preview não puder ser renderizado.
As exportações em PDF agora incluem automaticamente uma linha de soma para colunas numéricas compatíveis.
A ação Exportar PDF passou a totalizar automaticamente colunas compatíveis, sem depender de seleção no modal.
Colunas de valores são totalizadas e exibidas no padrão monetário brasileiro dentro do PDF.
Agora o Financeiro possui uma listagem dedicada para transações de cartão processadas via Rede.
Foi adicionada a tela Rede com os mesmos filtros, colunas, exportações e sincronização já usados na visão de cartões.
A nova página exibe apenas parcelas quitadas vinculadas ao gateway Rede, facilitando análise e conferência financeira.
A leitura de recorrência foi ajustada para evitar repetições e priorizar parcelas vencidas mais recentes.
O registro de tentativas recorrentes agora evita duplicidade para a mesma parcela e mesmo pagamento da operadora.
No processamento manual de recorrência, as parcelas são avaliadas do vencimento mais recente para o mais antigo.
Na sincronização Cielo, as tentativas agora consideram o PaymentNumber da operadora para evitar mistura de histórico de outras parcelas.
A emissão da declaração agora usa um cadastro de cursos com dados automáticos e controle de status.
A action de emissão agora permite selecionar um curso cadastrado e mostra automaticamente nome, carga horária, módulos e validade da declaração.
Após selecionar o curso, os dados exibidos ficam apenas para leitura, reduzindo erro de preenchimento manual.
Foi adicionada uma tela no Educacional para gerenciar cursos, categorias e status ativo/inativo.
A tela de Splits agora permite visualizar e filtrar os registros por produto.
A listagem de Splits exibe os produtos vinculados à venda em cada registro.
Agora é possível filtrar os splits por produto para encontrar resultados com mais precisão.
No relatório de Splits, a data de recebimento passa a considerar pagamento para boleto e crédito para cartão.
A listagem de Splits agora exibe os valores de desconto e acréscimo por parcela, com totalizadores.
Os relatórios em PDF ganharam um layout mais moderno, com melhor hierarquia visual e quebra correta de títulos longos nas colunas.
Os filtros aplicados no PDF agora exibem os nomes legíveis das opções, em vez de códigos numéricos.
A listagem de leads ficou mais resiliente e o PDF agora traz os filtros usados na consulta.
Quando a origem vier com valor inválido, a tabela exibe "Não mapeado" e mantém a tela funcionando.
O PDF de exportação agora mostra os filtros aplicados na listagem para facilitar conferência e auditoria.
A exportação em PDF passou a respeitar o formato exibido nas colunas, como parcela no padrão 1/12.
Vendas mistas agora exibem o valor correto de cartão na tabela e no totalizador.
No Cielo, quando a venda for mista, o valor de cartão é calculado como total da venda menos o valor das parcelas em boleto.
A ação Editar Selecionados agora permite ajustar também a categoria dos lançamentos.
No modal de edição em massa de Contas a Pagar, agora é possível definir a categoria para todos os itens selecionados de uma vez.
O DateRangeFilter agora mantém contraste correto no modo escuro.
As datas dentro do intervalo selecionado não ficam mais com fundo branco no tema escuro.
Agora é possível consultar, em tela, o histórico de mudanças de cada arquivo educacional.
Cada registro do Gerenciador de Arquivos ganhou a ação Histórico de Alterações com os dados da tabela revisions.
A coluna Data Envio agora é exibida com dia/mês/ano e hora no formato usado no Brasil.
No Histórico de Alterações, os valores antigo e novo do campo data_envio agora aparecem em dia/mês/ano e hora.
No Gerenciador de Arquivos, o histórico agora mostra o nome do status em vez de códigos numéricos.
A listagem do Gerenciador de Arquivos agora permite filtrar registros pelo período da última alteração.
Foram adicionadas as colunas Data da última alteração e Último usuário que alterou, ocultas por padrão na listagem.
A gestão das versões foi ajustada para evitar fragmentação e inconsistência no painel de novidades.
Entradas duplicadas da mesma entrega foram unificadas em uma única versão para manter o histórico limpo.
Se current estiver divergente do changelog, o sistema usa automaticamente a versão mais recente disponível.
O fluxo de consulta e conciliação Itaú foi consolidado em uma experiência única, com conferência manual e maior segurança operacional.
Na tela de Movimentações Bancárias, a ação consulta lançamentos do Itaú secundário por API sem depender de arquivo OFX.
Após a consulta, o sistema abre a tela de conciliação para o usuário revisar e vincular item a item.
O fluxo usa configuração e statement padrão definidos para reduzir erro de preenchimento no modal.
Se a configuração fixa não existir, o sistema busca automaticamente a primeira configuração válida com credenciais secundárias.
A tela de Conta Bancária Saldos recebeu resumo consolidado do extrato Itaú secundário por data.
Basta informar a data de referência para buscar os dados do extrato Itaú secundário.
O modal exibe a quantidade de itens e o valor total dos eventos encontrados na data.
O retorno inclui event_count com a quantidade total de eventos do extrato.
O retorno inclui event_amount_sum com a soma de amount.value em body.data.events.
A área de novidades ficou mais integrada ao menu do perfil.
Agora a opção Novidades fica no menu do usuário, sem botão flutuante na tela.
O menu exibe a versão definida no changelog do sistema.
Este espaço reúne as novidades e melhorias do ERP.
Agora você pode acompanhar atualizações diretamente no painel.