SMTP e modelos de e-mail
Onde no admin: System › Settings › Email (
/settings/email) — abas SMTP e Email templates. Log de entrega: Overview › Support › Sent emails (/support/emails).
O que faz
O NexCMP envia e-mails para verificação de cadastro, redefinição de senha, "VM ready" (com a senha inicial), faturas, saldo baixo, renovações, recargas, respostas de suporte e muito mais. Todos passam por uma conta SMTP fornecida por você. As mensagens e modelos existem em 16 idiomas; o idioma do cliente é utilizado.
Requisitos
| Item | Requisito |
|---|---|
| Servidor SMTP | Host, porta e credenciais de qualquer provedor (seu próprio servidor, Brevo, Amazon SES, Mailgun, Google Workspace …) |
| Rede | TCP de saída do servidor NexCMP para o host e a porta SMTP (587 STARTTLS, 465 TLS ou 25) |
| Dominio do remetente | Um domínio controlado por você, com SPF e DKIM publicados para o provedor e um registro DMARC |
| Permissão | A conta SMTP deve ter permissão para enviar como o endereço From |
Entregabilidade
E-mails como "VM ready" contêm senhas. Se o SPF/DKIM/DMARC do domínio do remetente não corresponder ao provedor SMTP, eles cairão no spam. A página lembra você disso.
Preparar o provedor de e-mail
- No painel do seu provedor, adicione e verifique seu domínio de envio (por exemplo,
example.com). - Publique os registros DNS SPF, DKIM e DMARC exibidos pelo provedor.
- Crie um usuário SMTP (ou chave API-SMTP) e anote o host, a porta, o nome de usuário e a senha.
Conectar no NexCMP
- Abra System › Settings › Email, aba SMTP.
- Preencha o formulário:
| Campo | Exemplo | Notas |
|---|---|---|
| Host | smtp.example.net | Servidor SMTP |
| Porta | 587 | |
| Segurança | STARTTLS (587) | Escolha o modo exigido pelo seu provedor |
| Nome de usuário | smtp-user | |
| Senha | (oculto) | Somente gravação: a página mostra apenas se um foi definido |
| E-mail de remetente | no-reply@example.com | Deve ser autorizado no provedor |
| Nome de remetente | Example Cloud | Usa o nome da sua marca por padrão |
| Responder para (opcional) | support@example.com | Para onde vão as respostas dos clientes |

- Clique em Save, depois em Send test e insira seu próprio endereço.
As configurações são armazenadas em um arquivo com acesso restrito (smtp.json, permissão 0600) e apenas o worker em segundo plano nexcmp-vmd envia e-mails; o serviço web apenas os enfileira.
Verificar
- A mensagem de teste chega à caixa de entrada (verifique também o spam). Na origem da mensagem, confirme
dkim=passespf=pass. - Abra Support › Sent emails: cada mensagem tem um status (enfileirada, enviada, com falha) e o resultado da entrega. Mensagens com falha são reenviadas até 3 vezes.
- Cadastre um cliente de teste no portal e confirme se o e-mail de verificação chega.
Editar modelos de e-mail
A aba Email templates lista cada modelo por chave, com os idiomas em que ele existe (por exemplo, verify_email, reset_password, vm_ready, invoice_paid, low_balance, topup_received, ticket_reply, scale_up …).
- Clique em um modelo e escolha um idioma.
- Edite o assunto e o corpo. Os espaços reservados são preenchidos quando uma mensagem é enfileirada.
- Salve. A alteração é aplicada imediatamente às mensagens enfileiradas posteriormente.

Limites e observações
- Uma conta SMTP por instalação. Os clientes dos revendedores recebem e-mail pela mesma conta, a menos que o revendedor esteja configurado de outra forma.
- Aplicam-se os limites de envio do provedor; o NexCMP não faz limitador de taxa além de tentar novamente.
- Sem SMTP o painel funciona, mas a verificação de cadastro e a redefinição de senha não podem ser concluídas pelos clientes.
Resolução de problemas
| Sintoma | Causa | Correção |
|---|---|---|
| O e-mail de teste nunca chega | Credenciais incorretas, porta bloqueada, remetente não autorizado | Verifique journalctl -u nexcmp-vmd para ver o erro SMTP; tente a porta 587 com STARTTLS; verifique o endereço From no provedor. |
| As mensagens vão para o spam | SPF/DKIM/DMARC ausentes ou desalinhados | Publique os registros do provedor e envie a partir desse domínio. |
| "failed" em Sent emails | O provedor rejeitou a mensagem | Abra a linha para ver a resposta do provedor. |
| O campo de senha parece vazio após salvar | Por design (somente gravação) | O rótulo exibe "current: set" assim que uma senha é armazenada. |