Módulos grátis

E-mail do Magento não chega: troque o sendmail por SMTP

Servidor de loja não tem reputação de envio. Enquanto o Magento estiver falando com o sendmail local, o e-mail do pedido vai continuar sumindo.

Por Roger Takemiya · Publicado em · 5 min de leitura

Cliente fecha o pedido e não recebe a confirmação. Pede para redefinir a senha e o link nunca chega. Você manda um e-mail de teste pelo Gmail e chega na hora, então parece que o problema é do cliente.

Não é. O Magento vem configurado para entregar tudo ao sendmail da própria máquina, em localhost, porta 25. Um VPS de loja não tem SPF publicado para aquele IP, nem histórico de envio, nem reputação. Gmail e Outlook simplesmente descartam.

Confira o que está configurado hoje

Os valores de fábrica do Magento são estes: system/smtp/transport em sendmail, host em localhost, port em 25 e auth em none. Veja o que a sua loja tem salvo:

php bin/magento config:show system/smtp/transport
php bin/magento config:show system/smtp/host

O config:show só mostra o que alguém salvou. Se voltar linha em branco, ninguém nunca mexeu ali — ou seja, a loja está no padrão, mandando pelo sendmail local. Se voltar sendmail escrito, mesma coisa.

Vale conferir também se alguém não deixou system/smtp/disable em 1 num ambiente que virou produção. Isso silencia todo o envio de e-mail da loja e não dá nenhum aviso.

Do 2.4.6 em diante não precisa de módulo

Essa é a parte que muita gente não sabe: o campo Transport com opção SMTP entrou no core no Magento 2.4.6. Antes disso, só com extensão. Fica em Stores > Configuration > Advanced > System > Mail Sending Settings, ou pela linha de comando:

php bin/magento config:set system/smtp/transport smtp
php bin/magento config:set system/smtp/host smtp.seuprovedor.com
php bin/magento config:set system/smtp/port 587
php bin/magento config:set system/smtp/auth login
php bin/magento config:set system/smtp/ssl tls
php bin/magento config:set system/smtp/username [email protected]
php bin/magento cache:clean config

Os valores aceitos são fixos: transport aceita sendmail ou smtp; auth aceita none, plain ou login; ssl aceita none, ssl ou tls. Errar a grafia aqui não dá erro na hora, só para de enviar.

A senha eu prefiro digitar no admin. O comando também funciona e grava criptografado, mas aí ela fica no histórico do shell e no log de comandos do servidor.

Quando o módulo grátis ainda compensa

O SMTP nativo entrega. O que ele não tem é resposta para a pergunta que o lojista faz toda semana: "esse e-mail saiu ou não saiu?". Sem log, você fica no escuro.

Duas opções gratuitas e mantidas de verdade:

MóduloPacoteO que ganha
Mageplaza SMTPmageplaza/module-smtplog de todo e-mail enviado, modo debug e envio de teste
MagePal Custom SMTPmagepal/magento2-gmailsmtpappconfiguração por store view e botão de teste antes de salvar

Instalação do Mageplaza, que é o que eu uso quando o cliente pede rastreio de envio:

composer require mageplaza/module-smtp
php bin/magento setup:upgrade
php bin/magento setup:static-content:deploy pt_BR
php bin/magento cache:flush

Ele puxa o mageplaza/module-core junto, é normal. A versão mais recente saiu em agosto de 2026, então o projeto está vivo. O da MagePal é composer require magepal/magento2-gmailsmtpapp e pede PHP 8.2 ou mais novo.

Um aviso: instalar o módulo não substitui arrumar o domínio de envio. Sem os registros de autenticação do seu domínio publicados no DNS, você só troca o lugar de onde o e-mail sai antes de cair no spam.

Perguntas rápidas

Estou no 2.4.5. Tenho SMTP nativo?

Não. O campo Transport com a opção SMTP entrou no core a partir do 2.4.6. Em versões anteriores o jeito é usar um módulo, e vale lembrar que o 2.4.5 já saiu do suporte estendido.

Posso usar uma conta comum do Gmail?

Dá para usar, mas o Google exige senha de aplicativo em vez da senha da conta e impõe limite diário de envio. Para loja com volume, um serviço de envio transacional é mais previsível.

Configurei o SMTP e o e-mail continua sem chegar. O que falta?

Provavelmente autenticação de domínio. O provedor de destino confere se o seu domínio autoriza aquele servidor a enviar em nome dele, e isso é configuração de DNS, não do Magento.

Pra conferir na fonte

  1. Advanced configuration: System — Adobe Experience League
  2. Magento 2 SMTP Extension — Mageplaza no GitHub
  3. mageplaza/module-smtp — Packagist
  4. magepal/magento2-gmailsmtpapp — Packagist

smtp e-mail módulo

Precisa de um orçamento? Ficarei feliz em ajudar. Clique Aqui