Pular para o conteúdo
couryo

SMTP para Lovable e Bolt

O app ficou pronto. O e-mail de login não chega.

Você montou no Lovable ou no Bolt, ligou o Supabase e mandou o link. As primeiras pessoas se cadastram e a confirmação nunca chega. Não é o seu app: o envio de e-mail que vem com o Supabase Auth foi feito para testar.

Criar conta grátis e pegar a chave

3.000 e-mails por mês grátis. Sem cartão para começar.

Por que o e-mail de login não chega

Números do Supabase da documentação do Auth, conferidos em 20/10/2026. O comportamento do Lovable vem da página Connect to Supabase, conferida em 24/10/2026. Se o seu projeto usa o backend embutido do Lovable em vez de um projeto Supabase seu, o próprio Lovable manda os e-mails de login e este caminho não se aplica.

Os campos para colar

No painel do Supabase: Authentication > Emails > SMTP Settings, ligue Enable Custom SMTP e preencha:

CampoValor
Host
smtp.couryo.com
Port number
587

STARTTLS. Ou 465 (TLS) ou 2525 (STARTTLS, quando a 587 está bloqueada).

Username
couryo

Sempre esta palavra, para qualquer conta.

Password
ck_live_...

Uma chave de API do Couryo com escopo send. Uma chave ck_test_ captura o e-mail no painel e não entrega nada.

Sender email
nao-responda@auth.seuapp.com.br

Um endereço de um domínio verificado no Couryo.

Sender name
Seu app

O nome que a pessoa vê na caixa de entrada.

Salve e, logo depois, abra Authentication > Rate Limits e suba os e-mails por hora. Ao salvar o SMTP próprio, o Supabase começa em 30 por hora; é o passo que mais gente esquece.

O prompt para colar no Lovable

Troque o remetente de exemplo pelo seu e cole no chat do Lovable (funciona no Bolt também). Ele arruma os links de retorno, a página de nova senha e a mensagem do 429, e devolve o checklist do Supabase. A chave nunca entra no código.

Prompt
Meu app faz login com um projeto Supabase meu. Os e-mails do Auth (confirmação de cadastro, link mágico e recuperação de senha) vão passar a sair pelo SMTP do Couryo, com o remetente nao-responda@auth.seuapp.com.br. Eu mesmo vou preencher o SMTP no painel do Supabase: nunca peça a senha do SMTP e nunca grave essa senha em nenhum arquivo do projeto.

Faça estas mudanças no código:
1. Em signUp, signInWithOtp e resetPasswordForEmail, passe emailRedirectTo (ou redirectTo) com a URL de produção do app, nunca localhost.
2. Crie a página /redefinir-senha, que lê a sessão do link e chama supabase.auth.updateUser({ password }).
3. Quando o Supabase responder 429 ou over_email_send_rate_limit, mostre "Já enviamos um e-mail há pouco. Confira a caixa de entrada e o spam; em 1 minuto você pode pedir de novo." e desative o botão de reenviar por 60 segundos, com um contador.
4. Depois, me passe este checklist para o painel do Supabase:
   - Authentication > Emails > SMTP Settings: ligar Enable Custom SMTP. Host smtp.couryo.com, Port number 587, Username couryo, Password = a minha chave de API do Couryo com escopo send, Sender email nao-responda@auth.seuapp.com.br, Sender name = o nome do meu app.
   - Authentication > Rate Limits: e-mails por hora para o meu pico de cadastros.
   - Authentication > URL Configuration: Site URL e Redirect URLs com o domínio de produção.

Três passos, sem mudar código

  1. 1

    Verifique o domínio de envio

    No Couryo, em Domínios, adicione o domínio (um subdomínio só para o login, como auth.seuapp.com.br, separa o Auth do marketing). Cada registro DNS mostra o status ao vivo, com a Cloudflare em um clique.

  2. 2

    Crie a chave do SMTP

    No painel, Chaves de API > Conectar ao Supabase cria uma chave só com escopo send e mostra cada campo com botão de copiar. A chave inteira aparece uma única vez.

  3. 3

    Cole, salve e teste

    Cole os campos no Supabase, suba o limite por hora e cadastre um usuário de teste. O e-mail aparece na linha do tempo do Couryo: aceito, enviado e entregue, com a resposta do servidor de destino em português.

Guia completo: Supabase Auth com SMTP personalizado

Quanto custa

E-mail de login é transacional: sai em qualquer plano, inclusive no Grátis. Preço em reais, com Pix.

Todos os planos e a calculadora

Perguntas frequentes

O Lovable consegue trocar o SMTP do Supabase sozinho?
Com um projeto Supabase seu, não: a documentação do Lovable diz que as configurações do Auth ficam no painel do Supabase, não no Lovable. Cole os campos do SMTP lá; o prompt desta página arruma o lado do app e devolve o checklist.
Quais dados de SMTP eu uso?
Host smtp.couryo.com, porta 587 (STARTTLS), 465 (TLS) ou 2525, usuário couryo, senha = uma chave de API do Couryo com escopo send e um Sender email de um domínio verificado no Couryo.
Funciona no Bolt?
Sim, quando o app do Bolt usa um projeto Supabase seu para o login: o SMTP vai no mesmo lugar do painel do Supabase, e o prompt funciona no chat do Bolt.
Meu projeto usa o backend embutido do Lovable. Vale para mim?
Não. No backend embutido, o próprio Lovable manda os e-mails de login. Este caminho é para projetos ligados a um projeto Supabase seu.
Quanto custa?
O plano Grátis tem 3.000 e-mails por mês, até 100 por dia, para sempre. O Pro custa R$ 99 por mês com 50.000 e-mails. Preço em reais, com Pix.
Dá para testar antes de abrir para o público?
Sim. Use uma chave ck_test_ como senha do SMTP: o Couryo captura o e-mail e mostra no painel, com o link, sem entregar nada. Troque pela chave ck_live_ quando o fluxo estiver certo.

Faça o próximo e-mail de cadastro chegar

Criar conta grátis e pegar a chave

3.000 e-mails por mês grátis. Sem cartão para começar.