Mudanças entre as edições de "Central de Notificações"

De Office System
Ir para navegação Ir para pesquisar
(Criou página com '==Central de Notificações== ==Visão funcional== A Central de Notificações é o módulo responsável pelo envio de mensagens automáticas e manuais aos clientes via Whats...')
 
 
(4 revisões intermediárias por 2 usuários não estão sendo mostradas)
Linha 7: Linha 7:
  
 
*'''Aniversário''' – clientes que fazem aniversário no período;
 
*'''Aniversário''' – clientes que fazem aniversário no período;
*'''Boleto a Vencer''' – boletos com vencimento próximo;
+
*'''Cobrança a Vencer''' – títulos do contas a receber com vencimento próximo, com ou sem boleto bancário gerado;
*'''Boleto Vencido''' – boletos em atraso;
+
*'''Cobrança Vencida''' – títulos em atraso, com ou sem boleto;
*'''Boleto Pago''' – boletos quitados;
+
*'''Cobrança Paga''' – títulos quitados;
 
*'''OS Pronta''' – ordens de serviço com status de pronta;
 
*'''OS Pronta''' – ordens de serviço com status de pronta;
 
*'''NF-e''' – notas fiscais eletrônicas emitidas;
 
*'''NF-e''' – notas fiscais eletrônicas emitidas;
 
*'''Tipos Personalizados''' – categorias criadas pelo próprio usuário com SQL customizado (ver seção específica).
 
*'''Tipos Personalizados''' – categorias criadas pelo próprio usuário com SQL customizado (ver seção específica).
 +
 +
<small>'''Categorias de OS que existem mas não aparecem na tela:''' o sistema também tem as categorias '''OS Aberta''', '''OS em Andamento''' e '''OS Faturada''' (códigos <code>OS_ABERTA</code>, <code>OS_ANDAMENTO</code>, <code>OS_FATURADA</code>). Só "OS Pronta" fica visível nos combos de categoria, nos templates e no envio automático da tela; as outras três não aparecem em nenhum desses lugares, mas têm rótulo próprio no filtro de '''Histórico''' — ou seja, elas existem para uso via API/integração de outro módulo, e podem aparecer no Histórico sem que o operador tenha configurado nada na Central de Notificações para elas.</small>
  
 
==Abas da tela==
 
==Abas da tela==
Linha 28: Linha 30:
  
 
===Histórico===
 
===Histórico===
Exibe registros de todos os envios realizados com filtros por período, tipo (WhatsApp/e-mail), categoria e status (Sucesso/Erro/Reenviado). Permite reenvio de falhas diretamente da tela.
+
Exibe registros de todos os envios realizados com filtros por período, tipo (WhatsApp/e-mail) e categoria. O filtro de '''status''' tem apenas as opções '''Todos''', '''Sucesso''' e '''Erro'''; "Reenviado" não é uma opção de filtro — é só um rótulo que aparece na grade para envios que foram reenviados. Permite reenvio de falhas diretamente da tela.
  
 
===Tipos Personalizados===
 
===Tipos Personalizados===
Linha 39: Linha 41:
  
 
*'''API Oficial (Meta)''' – integração direta com a API oficial da Meta. Exige Phone ID, Token de acesso e versão da API (ex.: v18.0). Não apresenta risco de bloqueio do número;
 
*'''API Oficial (Meta)''' – integração direta com a API oficial da Meta. Exige Phone ID, Token de acesso e versão da API (ex.: v18.0). Não apresenta risco de bloqueio do número;
*'''API Não Oficial (EvolutionGO)''' – emulação web do WhatsApp via EvolutionGO. Exige a criação de uma instância e vinculação do celular por QR Code. Apresenta risco de bloqueio do número em caso de uso inadequado (envio em massa, spam).
+
*'''API Não Oficial (uazapi)''' – emulação web do WhatsApp via uazapi. Exige a criação de uma instância e vinculação do celular por QR Code. Apresenta risco de bloqueio do número em caso de uso inadequado (envio em massa, spam).
  
 
===Campos da API Oficial===
 
===Campos da API Oficial===
Linha 48: Linha 50:
 
'''Campos'''
 
'''Campos'''
  
*'''Phone ID''' (NC_WA_PHONE_ID)
+
*'''Phone ID''' (NC_WA_PHONEID)
 
*'''Token''' (NC_WA_TOKEN)
 
*'''Token''' (NC_WA_TOKEN)
 
*'''Versão''' (NC_WA_VERSAO)
 
*'''Versão''' (NC_WA_VERSAO)
  
===Campos da API Não Oficial (EvolutionGO)===
+
===Campos da API Não Oficial (uazapi)===
 
'''Onde ficam'''
 
'''Onde ficam'''
  
Central de Notificações > Configurações > WhatsApp > grupo '''API Não Oficial - EvolutionGO'''
+
Central de Notificações > Configurações > WhatsApp > grupo '''API Não Oficial - uazapi'''
  
 
'''Campos'''
 
'''Campos'''
  
*'''Instância''' (NC_WA_INSTANCIA) – gerado automaticamente pelo sistema na primeira abertura; não editável pelo usuário;
+
*'''Servidor''' (NC_WA_UAZ_URL) – endereço do servidor uazapi; em branco, usa o servidor padrão do sistema;
*'''Intervalo entre envios (seg.)''' (NC_WA_INTERVALO) – tempo de espera entre cada mensagem enviada.
+
*'''Instância''' (NC_WA_UAZ_INSTANCIA) – gerado automaticamente pelo sistema na primeira abertura; não editável pelo usuário;
 +
*'''Token''' (NC_WA_UAZ_TOKEN) – gerado automaticamente pelo botão '''Criar Instância'''; não aparece como campo editável na tela;
 +
*'''Intervalo entre envios (seg.)''' (NC_WA_INTERVALO) – tempo de espera entre cada mensagem enviada. Campo compartilhado pelos dois tipos de API.
  
 
'''Ações disponíveis'''
 
'''Ações disponíveis'''
  
*'''Criar Instância''' – registra a instância no servidor EvolutionGO;
+
*'''Criar Instância''' – registra a instância no servidor uazapi. Exige que o Admin Token da conta uazapi já esteja gravado em '''NOTIF_CONFIG.NC_WA_UAZ_ADMTOKEN''' (não há campo na tela para isso; precisa ser gravado direto no banco);
 
*'''Consultar Status''' – verifica se o WhatsApp está conectado;
 
*'''Consultar Status''' – verifica se o WhatsApp está conectado;
 
*'''Conectar (QR Code)''' – exibe o QR Code para leitura pelo celular;
 
*'''Conectar (QR Code)''' – exibe o QR Code para leitura pelo celular;
Linha 109: Linha 113:
 
{| class="wikitable"
 
{| class="wikitable"
 
|-
 
|-
! Categoria !! Variáveis extras
+
!Categoria!!Variáveis extras
 
|-
 
|-
| Aniversário || {DATA_NASC}
+
|Aniversário||{DATA_NASC}
 
|-
 
|-
| Boleto a Vencer / Vencido / Pago || {VENCIMENTO} {VALOR} {DOCUMENTO} {LINK_BOLETO}
+
|Cobrança a Vencer / Vencida||{VENCIMENTO} {VALOR} {DOCUMENTO} {LINK_BOLETO}
 
|-
 
|-
| OS Pronta || {NUMERO_OS} {DATA_OS} {VALOR_OS} {STATUS_OS}
+
|Cobrança Paga||{VENCIMENTO} {VALOR} {DOCUMENTO} <small>(sem {LINK_BOLETO} — ver nota abaixo)</small>
 
|-
 
|-
| NF-e || {NUMERO_NOTA} {EMISSAO} {VALOR_NOTA} {CHAVE} {LINK_NOTA} {LINK_NFE} {LINK_BOLETO}
+
|OS Pronta||{NUMERO_OS} {DATA_OS} {VALOR_OS} {STATUS_OS}
 
|-
 
|-
| Tipos Personalizados || {DETALHE1} {DETALHE2} {DETALHE3} {DETALHE4} {REFERENCIA} {REFERENCIA_DOC} + campos retornados pelo SQL
+
|NF-e||{NUMERO_NOTA} {EMISSAO} {VALOR_NOTA} {CHAVE} {LINK_NOTA} {LINK_NFE} {LINK_BOLETO}
 +
|-
 +
|Tipos Personalizados||{DETALHE1} {DETALHE2} {DETALHE3} {DETALHE4} {REFERENCIA} {REFERENCIA_DOC} + campos retornados pelo SQL
 
|}
 
|}
 +
 +
'''Sobre {LINK_BOLETO} e {LINK_NOTA}/{LINK_NFE}:''' esses placeholders só são efetivamente substituídos por um link no canal '''WhatsApp via API Oficial (Meta)'''. Nos demais casos o comportamento é:
 +
 +
*'''WhatsApp uazapi''': o boleto/nota vai anexado como documento (não como link); o placeholder é removido do texto;
 +
*'''E-mail''': o boleto/nota sempre vai anexado em PDF; o placeholder é removido do texto;
 +
*'''Título sem boleto gerado''' (ver seção "Cobrança a Vencer, Vencida e Paga"): não há link nem anexo; o placeholder também é removido.
 +
 +
Como o placeholder é apenas removido (não a frase inteira em volta dele), um template escrito como "...você pode baixar o boleto pelo link: {LINK_BOLETO}" fica com a frase incompleta ("...pelo link:") sempre que o link não é usado. Vale revisar os templates de Cobrança pensando nesse caso.
 +
 +
'''{LINK_BOLETO} não existe para Cobrança Paga:''' diferente de "a Vencer"/"Vencida", a categoria Cobrança Paga não gera link nem anexo — nunca gerou. Se {LINK_BOLETO} for colocado no template dela, o texto <code>{LINK_BOLETO}</code> aparece literal na mensagem, sem ser substituído por nada.
 +
 +
==Cobrança a Vencer, Vencida e Paga==
 +
Essas três categorias trabalham em cima do contas a receber (CTARECEB) como um todo. Um título entra na lista independentemente de ter ou não boleto bancário gerado; o que muda é o que é enviado.
 +
 +
===Título sem boleto bancário gerado===
 +
Quando o título não tem banco vinculado, ou o banco não tem layout de boleto (NOTACAPA) e conta corrente (CONTACORR) configurados para a filial, a notificação é enviada mesmo assim:
 +
 +
*'''E-mail''': enviado sem anexo, só com o texto do template;
 +
*'''WhatsApp''' (uazapi ou Meta): enviado só com o texto, sem link e sem documento anexado.
 +
 +
===Boleto acumulado (opção "Acumulativo" na impressão de boletos)===
 +
Quando o boleto foi gerado de forma acumulada — várias notas/parcelas agrupadas em um único boleto, pela tela '''Relatórios > Financeiro > Boletos e Duplicatas > Impressão''', marcando '''Acumulativo por Cliente''' ou '''Acumulativo por Cliente/Vencimento''' — a Central de Notificações reconhece o agrupamento automaticamente e:
 +
 +
*Mostra '''uma única linha''' na listagem, representando o boleto inteiro (não uma linha por conta a receber);
 +
*O '''Valor''' exibido é a soma de todas as contas do grupo (em aberto, para Cobrança a Vencer/Vencida; pagas, para Cobrança Paga);
 +
*O '''Documento''' exibido é o número do boleto acumulado (ex.: <code>AC00033</code>);
 +
*O envio — e-mail ou WhatsApp — leva um '''único PDF''', com o valor total e o mesmo nosso número do boleto que seria impresso pela tela de Boletos e Duplicatas;
 +
*O histórico e o controle de reenvio consideram o boleto acumulado como um todo, então a baixa de uma das contas do grupo não faz a notificação ser enviada de novo por engano.
  
 
==Envio Automático==
 
==Envio Automático==
Linha 136: Linha 170:
 
*'''Canais''' (NC_AUTO_CANAIS) – WhatsApp e/ou E-mail;
 
*'''Canais''' (NC_AUTO_CANAIS) – WhatsApp e/ou E-mail;
 
*'''Categorias''' (NC_AUTO_CATEGORIAS) – quais categorias devem ser processadas automaticamente.
 
*'''Categorias''' (NC_AUTO_CATEGORIAS) – quais categorias devem ser processadas automaticamente.
 +
 +
'''Atenção: "OS Pronta" aparece marcável nesta lista, mas nunca é enviada pelo automático.''' O checklist de categorias mostra toda categoria visível na tela (inclusive OS Pronta), mas o processamento automático só existe, de fato, para: Aniversário, Cobrança a Vencer, Cobrança Vencida, Cobrança Paga, NF-e e Tipos Personalizados. Marcar "OS Pronta" na aba Automático não tem efeito nenhum — essa categoria só é enviada manualmente, pela aba Notificações.
  
 
===Regra de execução===
 
===Regra de execução===
  
 
*O sistema só executa uma vez por dia por filial (controla pela data em NC_AUTO_ULTIMODIA);
 
*O sistema só executa uma vez por dia por filial (controla pela data em NC_AUTO_ULTIMODIA);
*O envio automático processa registros do dia anterior, garantindo que a data de corte seja correta mesmo após a marcação de execução;
 
 
*Categorias não marcadas são ignoradas;
 
*Categorias não marcadas são ignoradas;
*Se nenhum canal estiver habilitado, o envio é abortado.
+
*Se nenhum canal estiver habilitado, o envio é abortado;
 +
*Boleto acumulado é processado como um único envio, mesmo no automático (ver seção "Cobrança a Vencer, Vencida e Paga").
 +
 
 +
'''O período processado NÃO é "dia anterior" para todas as categorias.''' O sistema sempre calcula a data de corte como "ontem" (<code>Date - 1</code>), mas cada categoria usa esse valor de um jeito diferente:
 +
 
 +
{| class="wikitable"
 +
|-
 +
!Categoria!!Período efetivamente processado
 +
|-
 +
|Aniversário||Ignora a data de corte: sempre processa aniversariantes de '''hoje'''
 +
|-
 +
|Cobrança a Vencer||De ontem até '''hoje''' (inclui vencimentos do dia)
 +
|-
 +
|Cobrança Vencida||Só '''ontem'''
 +
|-
 +
|Cobrança Paga||De ontem até '''hoje''' (inclui pagamentos do dia)
 +
|-
 +
|NF-e||Só '''ontem'''
 +
|}
 +
 
 +
Na prática: um aniversário, uma cobrança a vencer ou um pagamento de '''hoje''' já entra no próximo ciclo automático (mesmo dia seguinte de manhã); só Cobrança Vencida e NF-e realmente esperam até o dia seguinte ao registro.
  
 
==Tipos Personalizados==
 
==Tipos Personalizados==
Linha 154: Linha 209:
 
===Campos do cadastro===
 
===Campos do cadastro===
  
*'''Descrição''' (NTP_DESCRICAO) – nome da categoria exibido na interface;
+
*'''Descrição''' (NP_DESCRICAO) – nome da categoria exibido na interface;
*'''Ativo''' (NTP_ATIVO) – somente tipos ativos aparecem nas listas;
+
*'''Ativo''' (NP_ATIVO) – somente tipos ativos aparecem nas listas;
*'''Limite de envios''' (NTP_LIMIT) – quantidade máxima de registros processados por execução; 0 = sem limite;
+
*'''Limite de envios''' (NP_LIMIT) – quantidade máxima de registros processados por execução; 0 = sem limite. '''Vale só para o envio automático''' — não restringe disparos manuais pela aba Notificações;
*'''SQL''' (NTP_SQL) – consulta SQL que retorna os destinatários;
+
*'''SQL''' (NP_SQL) – consulta SQL que retorna os destinatários;
*'''Col 1 a Col 4''' (NTP_COL1 a NTP_COL4) – rótulos das colunas extras exibidas na listagem de envio manual.
+
*'''Col 1 a Col 4''' (NP_COL1_CAPTION a NP_COL4_CAPTION) – rótulos das colunas extras exibidas na listagem de envio manual.
  
 
===Colunas obrigatórias no SQL===
 
===Colunas obrigatórias no SQL===
Linha 180: Linha 235:
 
*''':DATA_DE''' ou ''':DE''' – data de início do período;
 
*''':DATA_DE''' ou ''':DE''' – data de início do período;
 
*''':DATA_ATE''' ou ''':ATE''' – data de fim do período;
 
*''':DATA_ATE''' ou ''':ATE''' – data de fim do período;
*''':REENVIO''' – ''S'' ou ''N''; indica se o modo de reenvio está ativo (uso manual).
+
*''':REENVIO''' – <code>'S'</code> ou <code>'N'</code>. No envio manual reflete a opção "Permitir reenvio" marcada na tela; no envio automático vem sempre <code>'N'</code>. Útil para o SQL decidir se deve ou não repetir registros já enviados.
  
 
===Regra de controle de reenvio===
 
===Regra de controle de reenvio===
Linha 194: Linha 249:
 
{| class="wikitable"
 
{| class="wikitable"
 
|-
 
|-
! Módulo !! Descrição
+
!Módulo!!Descrição
 
|-
 
|-
| '''Central de Notificações – Tipos Personalizados''' (324) || Habilita a aba de Tipos Personalizados na Central de Notificações. Sem esta permissão, a aba fica oculta.
+
|'''Central de Notificações – Tipos Personalizados''' (324)||Habilita a aba de Tipos Personalizados na Central de Notificações. Sem esta permissão, a aba fica oculta.
 
|}
 
|}
  
 
==Comportamentos importantes==
 
==Comportamentos importantes==
 
===Botões Gravar/Cancelar nas Configurações ficam desabilitados===
 
É o comportamento correto. Os botões ficam habilitados somente quando há alteração efetiva nos campos de configuração ou no template. Ao abrir a aba sem modificar nada, os botões permanecem desabilitados.
 
  
 
===Mensagem não chega por WhatsApp===
 
===Mensagem não chega por WhatsApp===
Linha 208: Linha 260:
  
 
1. Se a instância está conectada (botão '''Consultar Status''' deve mostrar "Conectado").
 
1. Se a instância está conectada (botão '''Consultar Status''' deve mostrar "Conectado").
 +
 
2. Se o número do cliente possui WhatsApp ativo – o sistema valida antes do envio.
 
2. Se o número do cliente possui WhatsApp ativo – o sistema valida antes do envio.
 +
 
3. Se o template de WhatsApp da categoria está preenchido.
 
3. Se o template de WhatsApp da categoria está preenchido.
 +
 
4. Se o canal WhatsApp está habilitado nos canais selecionados no momento do envio.
 
4. Se o canal WhatsApp está habilitado nos canais selecionados no momento do envio.
  
Linha 216: Linha 271:
  
 
1. Configurações de SMTP (servidor, porta, criptografia, usuário e senha) usando o botão '''Testar E-mail'''.
 
1. Configurações de SMTP (servidor, porta, criptografia, usuário e senha) usando o botão '''Testar E-mail'''.
 +
 
2. Se o cliente possui e-mail cadastrado.
 
2. Se o cliente possui e-mail cadastrado.
 +
 
3. Se o template de e-mail da categoria está preenchido.
 
3. Se o template de e-mail da categoria está preenchido.
  
Linha 223: Linha 280:
  
 
1. Se o campo '''Ativo''' do tipo personalizado está marcado.
 
1. Se o campo '''Ativo''' do tipo personalizado está marcado.
 +
 
2. Se o SQL está salvo corretamente (sem erros de sintaxe).
 
2. Se o SQL está salvo corretamente (sem erros de sintaxe).
3. Fechar e reabrir a Central de Notificações para recarregar as categorias.
+
 
 +
A lista de categorias é recarregada automaticamente ao gravar ou excluir um tipo personalizado — não é preciso fechar e reabrir a tela.
  
 
===Envio automático não disparou===
 
===Envio automático não disparou===
Linha 230: Linha 289:
  
 
1. Se NC_AUTO_ATIVO = 'S' para a filial.
 
1. Se NC_AUTO_ATIVO = 'S' para a filial.
 +
 
2. Se o horário configurado já passou no dia corrente.
 
2. Se o horário configurado já passou no dia corrente.
 +
 
3. Se NC_AUTO_ULTIMODIA já está preenchido com a data de hoje (indica que já executou).
 
3. Se NC_AUTO_ULTIMODIA já está preenchido com a data de hoje (indica que já executou).
 +
 
4. Se ao menos um canal (WA ou e-mail) está marcado.
 
4. Se ao menos um canal (WA ou e-mail) está marcado.
 +
 
5. Se ao menos uma categoria está marcada.
 
5. Se ao menos uma categoria está marcada.
  
 
===Registro aparece na consulta mas não é enviado no automático===
 
===Registro aparece na consulta mas não é enviado no automático===
O envio automático processa registros do '''dia anterior'''. Se o registro é do dia atual, ele será enviado no próximo ciclo (no dia seguinte). Isso é intencional para evitar inconsistência no controle de execução diária.
+
Duas causas possíveis:
 +
 
 +
*'''A categoria é "OS Pronta"''': essa categoria não é processada pelo envio automático, mesmo aparecendo marcável na aba Automático (ver seção "Envio Automático");
 +
*'''O registro é muito recente''': cada categoria de Cobrança/NF-e/Aniversário tem sua própria regra de corte por data — ver a tabela em "Envio Automático" para saber exatamente quando cada uma passa a ser processada. Isso é intencional, para evitar inconsistência no controle de execução diária.
  
 
==Atualização de banco (estrutura criada pelo módulo)==
 
==Atualização de banco (estrutura criada pelo módulo)==

Edição atual tal como às 17h25min de 11 de agosto de 2026

Central de Notificações

Visão funcional

A Central de Notificações é o módulo responsável pelo envio de mensagens automáticas e manuais aos clientes via WhatsApp e e-mail. O envio pode ocorrer de duas formas: manualmente pelo operador, selecionando destinatários e disparando na hora, ou automaticamente pelo sistema em horário configurado.

As categorias de notificação disponíveis são:

  • Aniversário – clientes que fazem aniversário no período;
  • Cobrança a Vencer – títulos do contas a receber com vencimento próximo, com ou sem boleto bancário gerado;
  • Cobrança Vencida – títulos em atraso, com ou sem boleto;
  • Cobrança Paga – títulos quitados;
  • OS Pronta – ordens de serviço com status de pronta;
  • NF-e – notas fiscais eletrônicas emitidas;
  • Tipos Personalizados – categorias criadas pelo próprio usuário com SQL customizado (ver seção específica).

Categorias de OS que existem mas não aparecem na tela: o sistema também tem as categorias OS Aberta, OS em Andamento e OS Faturada (códigos OS_ABERTA, OS_ANDAMENTO, OS_FATURADA). Só "OS Pronta" fica visível nos combos de categoria, nos templates e no envio automático da tela; as outras três não aparecem em nenhum desses lugares, mas têm rótulo próprio no filtro de Histórico — ou seja, elas existem para uso via API/integração de outro módulo, e podem aparecer no Histórico sem que o operador tenha configurado nada na Central de Notificações para elas.

Abas da tela

Notificações

Aba principal de consulta e envio manual. O operador filtra por categoria, filial e período, seleciona os destinatários na lista e aciona o envio por WhatsApp, e-mail ou ambos. O sistema exibe progresso em tempo real e permite cancelar o envio em andamento.

Configurações

Aba com quatro sub-abas de configuração:

  • WhatsApp – tipo de API, credenciais e intervalo entre envios;
  • E-mail – servidor SMTP, porta, criptografia e credenciais;
  • Templates – mensagens por categoria e canal;
  • Automático – ativação, horário e categorias do envio automático.

Histórico

Exibe registros de todos os envios realizados com filtros por período, tipo (WhatsApp/e-mail) e categoria. O filtro de status tem apenas as opções Todos, Sucesso e Erro; "Reenviado" não é uma opção de filtro — é só um rótulo que aparece na grade para envios que foram reenviados. Permite reenvio de falhas diretamente da tela.

Tipos Personalizados

Gerenciamento das categorias customizadas criadas pelo usuário (ver seção específica). A aba só aparece para usuários com permissão de acesso ao módulo correspondente.

Configuração do WhatsApp

Tipo de API

Existem duas opções de integração com WhatsApp:

  • API Oficial (Meta) – integração direta com a API oficial da Meta. Exige Phone ID, Token de acesso e versão da API (ex.: v18.0). Não apresenta risco de bloqueio do número;
  • API Não Oficial (uazapi) – emulação web do WhatsApp via uazapi. Exige a criação de uma instância e vinculação do celular por QR Code. Apresenta risco de bloqueio do número em caso de uso inadequado (envio em massa, spam).

Campos da API Oficial

Onde ficam

Central de Notificações > Configurações > WhatsApp > grupo API Oficial Meta

Campos

  • Phone ID (NC_WA_PHONEID)
  • Token (NC_WA_TOKEN)
  • Versão (NC_WA_VERSAO)

Campos da API Não Oficial (uazapi)

Onde ficam

Central de Notificações > Configurações > WhatsApp > grupo API Não Oficial - uazapi

Campos

  • Servidor (NC_WA_UAZ_URL) – endereço do servidor uazapi; em branco, usa o servidor padrão do sistema;
  • Instância (NC_WA_UAZ_INSTANCIA) – gerado automaticamente pelo sistema na primeira abertura; não editável pelo usuário;
  • Token (NC_WA_UAZ_TOKEN) – gerado automaticamente pelo botão Criar Instância; não aparece como campo editável na tela;
  • Intervalo entre envios (seg.) (NC_WA_INTERVALO) – tempo de espera entre cada mensagem enviada. Campo compartilhado pelos dois tipos de API.

Ações disponíveis

  • Criar Instância – registra a instância no servidor uazapi. Exige que o Admin Token da conta uazapi já esteja gravado em NOTIF_CONFIG.NC_WA_UAZ_ADMTOKEN (não há campo na tela para isso; precisa ser gravado direto no banco);
  • Consultar Status – verifica se o WhatsApp está conectado;
  • Conectar (QR Code) – exibe o QR Code para leitura pelo celular;
  • Desconectar – encerra a sessão do WhatsApp na instância.

O indicador de status (luz vermelha/verde) é atualizado automaticamente a cada 15 segundos enquanto a tela estiver aberta.

Configuração de E-mail

Onde fica

Central de Notificações > Configurações > E-mail

Campos

  • Servidor SMTP (NC_EMAIL_SMTP)
  • Porta (NC_EMAIL_PORTA)
  • Criptografia (NC_EMAIL_SSL) – opções: TLS, SSL, None
  • Usuário (NC_EMAIL_USUARIO)
  • Senha (NC_EMAIL_SENHA)
  • Nome exibido (NC_EMAIL_NOME)
  • E-mail de resposta (Reply-To) (NC_EMAIL_REPLY)
  • Intervalo entre envios (seg.) (NC_EMAIL_INTERVALO)

O botão Testar E-mail envia uma mensagem de teste para o próprio endereço configurado em Usuário.

Templates de mensagem

Onde fica

Central de Notificações > Configurações > Templates

Cada categoria possui um template separado para WhatsApp e um para E-mail. O template de e-mail inclui campo de assunto. Os templates são salvos por filial.

Variáveis disponíveis

Todas as categorias suportam as variáveis base:

  • {NOME} – nome do cliente;
  • {TELEFONE} – telefone do destinatário;
  • {EMAIL} – e-mail do destinatário.

Variáveis adicionais por categoria:

Categoria Variáveis extras
Aniversário {DATA_NASC}
Cobrança a Vencer / Vencida {VENCIMENTO} {VALOR} {DOCUMENTO} {LINK_BOLETO}
Cobrança Paga {VENCIMENTO} {VALOR} {DOCUMENTO} (sem {LINK_BOLETO} — ver nota abaixo)
OS Pronta {NUMERO_OS} {DATA_OS} {VALOR_OS} {STATUS_OS}
NF-e {NUMERO_NOTA} {EMISSAO} {VALOR_NOTA} {CHAVE} {LINK_NOTA} {LINK_NFE} {LINK_BOLETO}
Tipos Personalizados {DETALHE1} {DETALHE2} {DETALHE3} {DETALHE4} {REFERENCIA} {REFERENCIA_DOC} + campos retornados pelo SQL

Sobre {LINK_BOLETO} e {LINK_NOTA}/{LINK_NFE}: esses placeholders só são efetivamente substituídos por um link no canal WhatsApp via API Oficial (Meta). Nos demais casos o comportamento é:

  • WhatsApp uazapi: o boleto/nota vai anexado como documento (não como link); o placeholder é removido do texto;
  • E-mail: o boleto/nota sempre vai anexado em PDF; o placeholder é removido do texto;
  • Título sem boleto gerado (ver seção "Cobrança a Vencer, Vencida e Paga"): não há link nem anexo; o placeholder também é removido.

Como o placeholder é apenas removido (não a frase inteira em volta dele), um template escrito como "...você pode baixar o boleto pelo link: {LINK_BOLETO}" fica com a frase incompleta ("...pelo link:") sempre que o link não é usado. Vale revisar os templates de Cobrança pensando nesse caso.

{LINK_BOLETO} não existe para Cobrança Paga: diferente de "a Vencer"/"Vencida", a categoria Cobrança Paga não gera link nem anexo — nunca gerou. Se {LINK_BOLETO} for colocado no template dela, o texto {LINK_BOLETO} aparece literal na mensagem, sem ser substituído por nada.

Cobrança a Vencer, Vencida e Paga

Essas três categorias trabalham em cima do contas a receber (CTARECEB) como um todo. Um título entra na lista independentemente de ter ou não boleto bancário gerado; o que muda é o que é enviado.

Título sem boleto bancário gerado

Quando o título não tem banco vinculado, ou o banco não tem layout de boleto (NOTACAPA) e conta corrente (CONTACORR) configurados para a filial, a notificação é enviada mesmo assim:

  • E-mail: enviado sem anexo, só com o texto do template;
  • WhatsApp (uazapi ou Meta): enviado só com o texto, sem link e sem documento anexado.

Boleto acumulado (opção "Acumulativo" na impressão de boletos)

Quando o boleto foi gerado de forma acumulada — várias notas/parcelas agrupadas em um único boleto, pela tela Relatórios > Financeiro > Boletos e Duplicatas > Impressão, marcando Acumulativo por Cliente ou Acumulativo por Cliente/Vencimento — a Central de Notificações reconhece o agrupamento automaticamente e:

  • Mostra uma única linha na listagem, representando o boleto inteiro (não uma linha por conta a receber);
  • O Valor exibido é a soma de todas as contas do grupo (em aberto, para Cobrança a Vencer/Vencida; pagas, para Cobrança Paga);
  • O Documento exibido é o número do boleto acumulado (ex.: AC00033);
  • O envio — e-mail ou WhatsApp — leva um único PDF, com o valor total e o mesmo nosso número do boleto que seria impresso pela tela de Boletos e Duplicatas;
  • O histórico e o controle de reenvio consideram o boleto acumulado como um todo, então a baixa de uma das contas do grupo não faz a notificação ser enviada de novo por engano.

Envio Automático

Onde fica

Central de Notificações > Configurações > Automático

O sistema verifica a cada minuto se chegou o horário de envio e, se sim, dispara o processamento em segundo plano sem intervenção do usuário.

Campos de configuração

  • Ativo (NC_AUTO_ATIVO) – habilita ou desabilita o envio automático da filial;
  • Hora de envio (NC_AUTO_HORA / NC_AUTO_MINUTO) – horário em que o envio deve ocorrer (formato HH:MM);
  • Canais (NC_AUTO_CANAIS) – WhatsApp e/ou E-mail;
  • Categorias (NC_AUTO_CATEGORIAS) – quais categorias devem ser processadas automaticamente.

Atenção: "OS Pronta" aparece marcável nesta lista, mas nunca é enviada pelo automático. O checklist de categorias mostra toda categoria visível na tela (inclusive OS Pronta), mas o processamento automático só existe, de fato, para: Aniversário, Cobrança a Vencer, Cobrança Vencida, Cobrança Paga, NF-e e Tipos Personalizados. Marcar "OS Pronta" na aba Automático não tem efeito nenhum — essa categoria só é enviada manualmente, pela aba Notificações.

Regra de execução

  • O sistema só executa uma vez por dia por filial (controla pela data em NC_AUTO_ULTIMODIA);
  • Categorias não marcadas são ignoradas;
  • Se nenhum canal estiver habilitado, o envio é abortado;
  • Boleto acumulado é processado como um único envio, mesmo no automático (ver seção "Cobrança a Vencer, Vencida e Paga").

O período processado NÃO é "dia anterior" para todas as categorias. O sistema sempre calcula a data de corte como "ontem" (Date - 1), mas cada categoria usa esse valor de um jeito diferente:

Categoria Período efetivamente processado
Aniversário Ignora a data de corte: sempre processa aniversariantes de hoje
Cobrança a Vencer De ontem até hoje (inclui vencimentos do dia)
Cobrança Vencida ontem
Cobrança Paga De ontem até hoje (inclui pagamentos do dia)
NF-e ontem

Na prática: um aniversário, uma cobrança a vencer ou um pagamento de hoje já entra no próximo ciclo automático (mesmo dia seguinte de manhã); só Cobrança Vencida e NF-e realmente esperam até o dia seguinte ao registro.

Tipos Personalizados

Onde fica

Central de Notificações > aba Tipos Personalizados

Permite criar categorias de notificação próprias, com SQL personalizado definido pelo usuário. Cada tipo personalizado aparece automaticamente nas abas de Notificações (envio manual), Templates e nas categorias do Envio Automático.

Campos do cadastro

  • Descrição (NP_DESCRICAO) – nome da categoria exibido na interface;
  • Ativo (NP_ATIVO) – somente tipos ativos aparecem nas listas;
  • Limite de envios (NP_LIMIT) – quantidade máxima de registros processados por execução; 0 = sem limite. Vale só para o envio automático — não restringe disparos manuais pela aba Notificações;
  • SQL (NP_SQL) – consulta SQL que retorna os destinatários;
  • Col 1 a Col 4 (NP_COL1_CAPTION a NP_COL4_CAPTION) – rótulos das colunas extras exibidas na listagem de envio manual.

Colunas obrigatórias no SQL

O SQL deve retornar obrigatoriamente as seguintes colunas:

  • CLIENTE_ID – código do cliente;
  • NOME – nome do destinatário;
  • FONE – número de WhatsApp;
  • EMAIL – endereço de e-mail;
  • REFERENCIA – identificador único do registro (usado para controle de reenvio).

Colunas opcionais que alimentam os placeholders do template:

  • DETALHE1 a DETALHE4 – informações extras usadas via {DETALHE1}…{DETALHE4};
  • REFERENCIA_DOC – número de documento para exibição no histórico.

Parâmetros disponíveis no SQL

  • :FILIAL – código da filial atual;
  • :DATA_DE ou :DE – data de início do período;
  • :DATA_ATE ou :ATE – data de fim do período;
  • :REENVIO'S' ou 'N'. No envio manual reflete a opção "Permitir reenvio" marcada na tela; no envio automático vem sempre 'N'. Útil para o SQL decidir se deve ou não repetir registros já enviados.

Regra de controle de reenvio

O sistema filtra automaticamente registros que já foram enviados com sucesso, comparando REFERENCIA e categoria na tabela NOTIF_HISTORICO. Assim, o mesmo registro não é enviado duas vezes no automático nem no manual (quando a opção de reenvio não está marcada).

Validação de placeholders

Ao salvar o template de um tipo personalizado, o sistema valida se todas as variáveis usadas no texto ({...}) são campos efetivamente retornados pelo SQL cadastrado. Se um placeholder não existir no SQL, a gravação é bloqueada com mensagem indicando os campos disponíveis.

Permissões

Módulo Descrição
Central de Notificações – Tipos Personalizados (324) Habilita a aba de Tipos Personalizados na Central de Notificações. Sem esta permissão, a aba fica oculta.

Comportamentos importantes

Mensagem não chega por WhatsApp

Conferir, nesta ordem:

1. Se a instância está conectada (botão Consultar Status deve mostrar "Conectado").

2. Se o número do cliente possui WhatsApp ativo – o sistema valida antes do envio.

3. Se o template de WhatsApp da categoria está preenchido.

4. Se o canal WhatsApp está habilitado nos canais selecionados no momento do envio.

Mensagem não chega por e-mail

Conferir:

1. Configurações de SMTP (servidor, porta, criptografia, usuário e senha) usando o botão Testar E-mail.

2. Se o cliente possui e-mail cadastrado.

3. Se o template de e-mail da categoria está preenchido.

Tipo personalizado não aparece nas categorias

Conferir:

1. Se o campo Ativo do tipo personalizado está marcado.

2. Se o SQL está salvo corretamente (sem erros de sintaxe).

A lista de categorias é recarregada automaticamente ao gravar ou excluir um tipo personalizado — não é preciso fechar e reabrir a tela.

Envio automático não disparou

Conferir, nesta ordem:

1. Se NC_AUTO_ATIVO = 'S' para a filial.

2. Se o horário configurado já passou no dia corrente.

3. Se NC_AUTO_ULTIMODIA já está preenchido com a data de hoje (indica que já executou).

4. Se ao menos um canal (WA ou e-mail) está marcado.

5. Se ao menos uma categoria está marcada.

Registro aparece na consulta mas não é enviado no automático

Duas causas possíveis:

  • A categoria é "OS Pronta": essa categoria não é processada pelo envio automático, mesmo aparecendo marcável na aba Automático (ver seção "Envio Automático");
  • O registro é muito recente: cada categoria de Cobrança/NF-e/Aniversário tem sua própria regra de corte por data — ver a tabela em "Envio Automático" para saber exatamente quando cada uma passa a ser processada. Isso é intencional, para evitar inconsistência no controle de execução diária.

Atualização de banco (estrutura criada pelo módulo)

Tabelas criadas:

  • NOTIF_CONFIG – configuração de WhatsApp e e-mail por filial;
  • NOTIF_TEMPLATE – templates de mensagem por categoria, tipo e filial;
  • NOTIF_HISTORICO – histórico de todos os envios realizados;
  • NOTIF_TIPO_PERS – cadastro dos tipos de notificação personalizados.

Campos relevantes de NOTIF_CONFIG:

  • NC_AUTO_ATIVO, NC_AUTO_HORA, NC_AUTO_MINUTO, NC_AUTO_CANAIS, NC_AUTO_CATEGORIAS, NC_AUTO_ULTIMODIA – controle do envio automático.