Ritto Mail Docs

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

CampoValor
Servidor (host)smtp.ritto.email
Porta465, 587 ou 2587 — veja a tabela abaixo
Usuárioritto-mail
Senhaqualquer chave de API de Chaves de API no painel (rm_…)
PortaSegurançaQuando usar
465SSL/TLS (TLS direto — criptografado desde o primeiro byte)Apps que pedem "SSL", "SSL/TLS" ou secure: true, como o Supabase
587STARTTLS (a conexão começa aberta e passa a TLS antes da autenticação)Apps que pedem "STARTTLS" ou "TLS"
2587STARTTLSAlternativa 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:

CampoResendRitto Mail
Hostsmtp.resend.comsmtp.ritto.email
Porta465465 (continua igual) — a 587 também funciona
Usuárioresendritto-mail
Senhaa 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 465 e STARTTLS com a 587 ou a 2587.
  • Conexão expira na 587: alguns provedores de hospedagem bloqueiam a saída pela 587. Use a porta 465 ou a 2587.
  • 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ão resend).
  • Remetente recusado: verifique antes o domínio do From em Domínios.
  • Sem plano ativo: o envio exige uma assinatura ativa — veja Cobrança.

Nesta página