Relay SMTP
Envie pelo Ritto Mail a partir de qualquer app que fale SMTP — Supabase, n8n, WordPress, Nodemailer e outros.
Apps que não chamam uma API HTTP podem enviar pelo relay SMTP do Ritto Mail. As mensagens passam pelo mesmo fluxo da API de e-mails: mesmos domínios, supressões, webhooks, logs e limites do plano.
Configuração
| Campo | Valor |
|---|---|
| Servidor (host) | smtp.ritto.email |
| Porta | 465, 587 ou 2587 — veja a tabela abaixo |
| Usuário | ritto-mail |
| Senha | qualquer chave de API de Chaves de API no painel (rm_…) |
| Porta | Segurança | Quando usar |
|---|---|---|
465 | SSL/TLS (TLS direto — criptografado desde o primeiro byte) | Apps que pedem "SSL", "SSL/TLS" ou secure: true, como o Supabase |
587 | STARTTLS (a conexão começa aberta e passa a TLS antes da autenticação) | Apps que pedem "STARTTLS" ou "TLS" |
2587 | STARTTLS | Alternativa quando a sua rede bloqueia a 587 |
Todas as portas exigem TLS antes da autenticação; a chave de API nunca trafega aberta. O endereço From precisa usar um domínio verificado no mesmo time da chave de API.
Migrando da Resend
Se o seu app já envia por smtp.resend.com, troque só três campos:
| Campo | Resend | Ritto Mail |
|---|---|---|
| Host | smtp.resend.com | smtp.ritto.email |
| Porta | 465 | 465 (continua igual) — a 587 também funciona |
| Usuário | resend | ritto-mail |
| Senha | a sua chave da Resend (re_…) | a sua chave do Ritto Mail (rm_…) |
A segurança continua a mesma (SSL/TLS na 465, STARTTLS na 587). Verifique o domínio de envio em Domínios antes de trocar, senão as mensagens são recusadas.
Supabase (e-mails de autenticação)
No Supabase → Project Settings → Authentication → SMTP Settings, ative o SMTP personalizado e preencha:
- E-mail do remetente:
no-reply@seudominio.com.br(domínio verificado) - Host:
smtp.ritto.email· Porta:465 - Usuário:
ritto-mail· Senha: a sua chave de API
O Supabase usa TLS direto na 465, a mesma configuração que a Resend recomenda; a 587 também funciona.
Nodemailer
import nodemailer from "nodemailer";
// Porta 465: TLS direto.
const transport = nodemailer.createTransport({
host: "smtp.ritto.email",
port: 465,
secure: true,
auth: { user: "ritto-mail", pass: process.env.RITTO_MAIL_API_KEY },
});
// Ou porta 587: STARTTLS.
// nodemailer.createTransport({ host: "smtp.ritto.email", port: 587, secure: false, requireTLS: true, auth: { ... } });
await transport.sendMail({
from: "Loja Exemplo <pedidos@loja.com.br>",
to: "cliente@exemplo.com.br",
subject: "Seu pedido foi aprovado",
html: "<p>Obrigado pela compra!</p>",
});n8n, WordPress e outros
Use a credencial SMTP genérica da ferramenta com a configuração acima. Escolha
SSL/TLS com a porta 465, ou STARTTLS (às vezes aparece como "TLS") com
a porta 587. Misturar (SSL na 587, STARTTLS na 465) falha já na conexão.
Problemas comuns
- Conexão trava ou dá erro de handshake / "wrong version number": o modo de
segurança não combina com a porta. Use SSL/TLS com a
465e STARTTLS com a587ou a2587. - Conexão expira na 587: alguns provedores de hospedagem bloqueiam a saída
pela 587. Use a porta
465ou a2587. - Falha de autenticação: a senha precisa ser uma chave de API válida e não
revogada; o usuário é sempre
ritto-mail(nãoresend). - Remetente recusado: verifique antes o domínio do From em Domínios.
- Sem plano ativo: o envio exige uma assinatura ativa — veja Cobrança.