For AI agents: fetch the complete documentation index at /llms.txt, the full documentation corpus at /llms-full.txt, the agent skill at /skill.md, or this page as Markdown at /pt/docs/web/email.md (or send Accept: text/markdown).
Email e correio
Templates transacionais, ferramentas de pré-visualização e adaptadores de provider.
Leia sua primeira mensagem local e ative a entrega
E-mail transacional significa uma mensagem acionada por uma ação do aplicativo, como um código de login ou resultado de uma tarefa. Com o servidor Web em execução, mantenha EMAIL_PROVIDER=local em apps/web/.env.local. Conclua a configuração do banco de dados, solicite um código de login em /auth, abra /mail-preview e inspecione a mensagem mais recente. Uma mensagem local que aparece aqui não é um e-mail entregue em sua caixa de entrada externa.
Para enviar mensagens reais, escolha um provedor de e-mail, crie sua conta, verifique um domínio que você controla e siga seu guia dedicado. Coloque a chave API nomeada e o endereço do remetente em apps/web/.env.local, salve e reinicie o servidor Web. Solicite um novo código de login e verifique o registro de entrega do provedor e a caixa de entrada de destino, incluindo spam. A verificação do domínio e a aprovação do remetente podem levar algum tempo.
Se a mensagem falhar, inspecione o erro de entrega e a verificação do remetente antes de solicitar repetidamente. A rota /mail-preview é somente de desenvolvimento e retorna 404 em produção. Mantenha o alcance de marketing separado desse remetente transacional para que uma campanha de boletim informativo não interrompa o e-mail de verificação de conta.
Mantém a entrega transacional separada
O módulo de email trata mensagens transacionais de produto, incluindo auth e avisos de conclusão de tarefas. A divulgação pertence ao próprio fluxo do produto consumidor e deve permanecer separada deste caminho transacional.
Configura o adaptador de entrega
Usa o adaptador local para testes deterministas. Configura o adaptador de produção escolhido e as suas credenciais de servidor antes de ativar a entrega externa. Nunca coloques segredos do fornecedor de email na configuração de cliente ou em logs.
Regista a entrega independentemente
Um resultado gerado e o seu email de conclusão têm resultados separados. Inspeciona os registos de entrega antes de afirmar que uma mensagem foi enviada. Testa uma entrega falhada sem a tratar como uma geração falhada nem submeter trabalho de modelo duplicado.
Instalação e configuração
EMAIL_PROVIDER=local mantém a entrega determinística durante o desenvolvimento. Para entrega de produção escolhe um dos adaptadores configurados — Resend (RESEND_API_KEY), AWS SES (AWS_REGION mais access keys), Postmark, SendGrid, Mailgun, SMTP genérico ou Brevo — e verifica que EMAIL_FROM corresponde a uma identidade de remetente que o fornecedor aceita.
Todos os templates vivem em src/transactional-mail-templates.ts. A rota /mail-preview, só de desenvolvimento, renderiza cada template para que as alterações sejam revistas visualmente em vez de enviando correio.
EMAIL_PROVIDER=resend
EMAIL_FROM=Your Product <[email protected]>Fluxo de implementação
Códigos de autenticação, magic links, convites, avisos de faturação e mails de conclusão de tarefa passam todos pelo mesmo remetente transacional com o texto da locale resolvida. As campanhas de outreach são uma preocupação de produto separada e nunca partilham este percurso.
Pré-visualiza um template no mail-preview antes de editar texto ou layout; mantém os valores de marca (nome, cores, tiles do logotipo) a vir da configuração para que produtos derivados reestilem sem fazer fork dos templates.
Verificação e resolução de problemas
Nos testes, afirma sobre as mensagens registadas do adaptador local — destinatário, assunto e corpo renderizado. Um envio falhado deve emergir como um resultado de entrega, não como um workflow quebrado. Usa o percurso smoke opcional com REAL_SMOKE_EMAIL_ALLOWED_DOMAIN para entrega real.