Como configurar o WP Mail SMTP para resolver falhas de envio de e-mail no WooCommerce
Seu WooCommerce está perdendo vendas porque os clientes não recebem e-mails de confirmação, recuperação de carrinho ou notificações de pedido. O problema quase sempre é o mesmo: o WordPress usa a função mail() do PHP, que é bloqueada por provedores de hospedagem e serviços de e-mail como Gmail, Outlook ou Yahoo. A solução direta é configurar um servidor SMTP autêntico com o WP Mail SMTP, o plugin mais usado para resolver esse tipo de falha. Neste guia, você vai aprender a diagnosticar o erro, configurar o plugin corretamente e testar a entrega.
- Por que os e-mails do WooCommerce não estão sendo entregues
- Como instalar e configurar o WP Mail SMTP passo a passo
- Diferença entre servidores SMTP gratuitos e transacionais
- Como configurar registros SPF, DKIM e DMARC para evitar rejeição
- Como usar logs de e-mail para depurar erros
- Testes práticos para garantir que tudo está funcionando
Por que o WooCommerce não envia e-mails?
O WooCommerce, por padrão, utiliza a função wp_mail() do WordPress, que por sua vez depende da função mail() do PHP. A maioria das hospedagens compartilhadas desabilita ou restringe severamente o uso dessa função para evitar que servidores sejam usados como relays de spam. Além disso, mesmo quando habilitada, provedores como Gmail, Outlook e Yahoo aplicam políticas rigorosas de autenticação (SPF, DKIM, DMARC) e exigem conexões criptografadas (TLS/SSL). Sem autenticação, seus e-mails são marcados como spam ou rejeitados.
Os sintomas clássicos incluem:
- Cliente faz um pedido e nunca recebe o e-mail de confirmação.
- Você não recebe notificações de novos pedidos no WooCommerce.
- E-mails de recuperação de senha ou de carrinho abandonado não chegam.
- No painel do WooCommerce, os pedidos aparecem como “Em processamento”, mas o cliente reclama que não recebeu nada.
O WP Mail SMTP resolve isso redirecionando todos os e-mails do WordPress para um servidor SMTP autenticado, em vez de usar a função mail() do PHP. Dessa forma, você garante que os e-mails sejam enviados com credenciais válidas e conexão criptografada.
Escolhendo o serviço SMTP ideal
Antes de configurar o plugin, você precisa de um serviço SMTP. Existem duas categorias principais:
Serviços SMTP gratuitos (limitados)
- Gmail SMTP: Funciona, mas tem limites de 500 e-mails por dia (contas gratuitas) e exige autenticação OAuth 2.0. Indicado apenas para testes ou sites com volume muito baixo.
- SendGrid Free: 100 e-mails/dia gratuitos. Suficiente para lojas em início.
- Mailgun Free: 5.000 e-mails/mês nos primeiros 3 meses, depois 1.000/mês.
- Amazon SES: 62.000 e-mails/mês gratuitos se você estiver na camada gratuita da AWS (apenas para envio de EC2, na prática pode gerar custos).
Serviços SMTP transacionais (pagos, recomendados para produção)
- SendGrid (Planos pagos): A partir de $19,95/mês para 50.000 e-mails.
- Mailgun: A partir de $35/mês para 50.000 e-mails.
- Postmark: Focado em entregabilidade, a partir de $15/mês para 10.000 e-mails.
- Amazon SES: $0,10 por 1.000 e-mails, excelente para alto volume.
Para lojas WooCommerce com volume acima de 100 transações por mês, um serviço transacional é o caminho. O investimento é pequeno e a entregabilidade é drasticamente superior.

Instalação e configuração do WP Mail SMTP
O WP Mail SMTP está disponível em versão gratuita (WP Mail SMTP Lite) e versão Pro. A versão Lite cobre a maioria dos casos de uso comuns, incluindo suporte a Gmail, SendGrid, Mailgun, Amazon SES, SMTP genérico e outros. A versão Pro adiciona logs de e-mail, relatórios de entrega, controle de e-mails duplicados e integração com serviços de e-mail marketing.
Neste tutorial, usaremos a versão Pro (disponível no Clube GPL) porque os logs de e-mail são essenciais para depuração. O passo a passo é praticamente idêntico para a versão Lite, com exceção dos recursos avançados.
Passo 1: Instalar o plugin
- No painel do WordPress, vá em Plugins > Adicionar Novo.
- Pesquise por “WP Mail SMTP” ou, se tiver a versão Pro, faça o upload do arquivo ZIP.
- Ative o plugin.
Passo 2: Acessar as configurações
Vá em Configurações > WP Mail SMTP. Você verá a tela principal de configuração.
Passo 3: Escolher o Mailer (servidor SMTP)
No campo Mailer, selecione a opção correspondente ao serviço que você escolheu. As opções mais comuns são:
- SendGrid: Se você criou uma conta no SendGrid.
- Mailgun: Se você usa Mailgun.
- Amazon SES: Se você tem uma conta AWS configurada.
- SMTP: Se você deseja configurar manualmente um servidor SMTP genérico (ex: seu provedor de hospedagem, Gmail, Outlook, etc.).
- Outros: Gmail (via OAuth), Outlook, Zoho, etc.
Para este exemplo, vamos configurar o SendGrid, que é um dos mais fáceis e confiáveis.
Passo 4: Configurar o SendGrid
- Selecione SendGrid no campo Mailer.
- No campo SendGrid API Key, insira a chave de API gerada no painel do SendGrid. Para gerar a chave, faça login no SendGrid, vá em Settings > API Keys e crie uma chave com permissão de envio (Full Access ou Restricted Access com permissão de Mail Send).
- Clique em Salvar Configurações.
Passo 5: Configurar o “From Email” (E-mail de origem)
No campo From Email, defina o endereço de e-mail que será usado como remetente. IMPORTANTE: Esse endereço deve ser o mesmo que você usou para configurar a conta no serviço SMTP (ex: co*****@************om.br). Se você usar um endereço diferente, o serviço SMTP pode rejeitar o envio.
O campo From Name é opcional, mas recomendamos usar o nome da sua loja.
Passo 6: Configurar registros DNS (SPF, DKIM, DMARC)
Essa é a etapa mais importante para garantir que seus e-mails não caiam em spam. Sem esses registros, provedores como Gmail e Outlook podem rejeitar ou marcar seus e-mails como suspeitos.
SPF (Sender Policy Framework)
Define quais servidores têm permissão para enviar e-mails em nome do seu domínio. Adicione um registro TXT no DNS do seu domínio com o seguinte formato (substitua pelo seu serviço):
v=spf1 include:sendgrid.net ~allSe você usa outro serviço, consulte a documentação para o valor correto de include. Ex: include:spf.mailgun.org, include:amazonses.com.
DKIM (DomainKeys Identified Mail)
Adiciona uma assinatura digital ao e-mail, garantindo que ele não foi alterado durante o trânsito. Cada serviço SMTP gera um registro DKIM específico. No SendGrid, vá em Settings > Sender Authentication > Domain Authentication e siga as instruções para gerar o registro CNAME ou TXT a ser adicionado no DNS.
DMARC (Domain-based Message Authentication, Reporting & Conformance)
Política que define como provedores devem tratar e-mails que falham nas verificações SPF e DKIM. Adicione um registro TXT como:
v=DMARC1; p=quarantine; rua=mailto:dm***@************om.br" data-original-string="vEgfM3gzc2e6UoeyNkBhqQ==f2euEtwgcj7sQ55u6PnV+9p9sFACwf9dGWL8BPBVKA6QLMWRvS6nUDsFP9GmNhYTukKGP1ubNywyI92ASITxdiG9wZjMQvdTonjfhyQlz2seKzPWAnWamZEFZp4I5erlcKi4r2J8On+H5ZUqscmXFlJw33NS6IulpLDLfl8wUCNZ1MRFQp8TKiXLirf/b7a71UixbBKxBd4UVgzrfZHb9y482JjmVolzmvdB3jsoREm0BiwPncmW35wg7HN6KCACWg4dOJ8fY7QEwFUqNqBUzWcAOMuPkMWaNJ3t8smU6ldY/seyT4+l9SOJ5G4uA7HcYuN9XQlw/+BCGGpA4faJxV1FumLOIcQRmAOZ9XsyRr+ykP0lxaKJJ/Z6KxHKH5oy4NUXXOmOLaNsy8CnDv96ZrRnzHHjRMW72Kql6gxF/BdDx8=" title="This contact has been encoded by Anti-Spam by CleanTalk. Click to decode. To finish the decoding make sure that JavaScript is enabled in your browser.O valor p=quarantine instrui provedores a colocar e-mails suspeitos em quarentena (spam). Para sites em produção, comece com p=none para monitorar, depois evolua para p=quarantine ou p=reject.
Usando logs de e-mail para depurar erros

Se os e-mails ainda não estiverem chegando, a funcionalidade de logs de e-mail do WP Mail SMTP Pro é sua melhor amiga. Ela registra cada e-mail enviado, incluindo status, data/hora, destinatário, assunto e, em caso de falha, a mensagem de erro detalhada.
Para acessar os logs:
- Vá em WP Mail SMTP > Email Log.
- Você verá uma lista com todos os e-mails enviados. Cada linha mostra o status (Success, Failed, Sent), o assunto, o destinatário e a data.
- Clique em um e-mail com status “Failed” para ver os detalhes do erro. A mensagem de erro geralmente aponta para a causa raiz: credenciais inválidas, porta bloqueada, falha de autenticação, etc.
Erros comuns que você pode encontrar nos logs:
- “SMTP connect() failed”: O servidor SMTP não está acessível. Verifique se o host e a porta estão corretos e se sua hospedagem não bloqueia a porta (ex: porta 25 é frequentemente bloqueada).
- “Authentication failed”: Suas credenciais (usuário/senha ou API Key) estão incorretas.
- “Could not authenticate with SMTP”: Geralmente relacionado a configurações de criptografia. Tente alternar entre TLS e SSL.
- “Connection timed out”: O servidor SMTP não respondeu no tempo limite. Pode ser problema de rede ou firewall.
Teste prático: como saber se a configuração está funcionando
Após configurar tudo, faça um teste de envio diretamente pelo plugin:
- Vá em WP Mail SMTP > Tools > Test Email.
- Insira seu endereço de e-mail no campo “Send To”.
- Clique em “Send Email”.
- Verifique sua caixa de entrada (e também a pasta de spam).
Se o e-mail de teste chegar, a configuração básica está funcionando. Agora, teste o fluxo completo do WooCommerce:
- Faça um pedido de teste na sua loja (use um cupom de 100% de desconto ou um método de pagamento como “Cheque” para não gerar custos reais).
- Verifique se o cliente (você no e-mail de teste) recebeu o e-mail de confirmação do pedido.
- No painel do WooCommerce, verifique se o administrador recebeu a notificação de novo pedido.
- Verifique os logs de e-mail do WP Mail SMTP para confirmar que ambos os e-mails foram enviados com status “Success”.

Configuração do SMTP do WooCommerce com WP Mail SMTP
O WP Mail SMTP substitui automaticamente a função wp_mail() do WordPress. Portanto, não é necessário fazer nenhuma configuração adicional no WooCommerce. Todos os e-mails enviados pelo WooCommerce (novo pedido, pedido cancelado, nota do cliente, reembolso, etc.) passarão automaticamente pelo servidor SMTP que você configurou no plugin.
No entanto, se você usa plugins de e-mail marketing que enviam newsletters ou campanhas (como Mailchimp, ActiveCampaign, etc.), esses plugins têm seus próprios mecanismos de envio e geralmente não são afetados pelo WP Mail SMTP. Para esses casos, configure o SMTP diretamente no serviço de e-mail marketing.
O que fazer se o problema persistir
Se mesmo após a configuração correta os e-mails continuarem falhando, verifique os seguintes pontos:
- Firewall ou segurança da hospedagem: Algumas hospedagens bloqueiam portas SMTP não padrão. Converse com o suporte para liberar as portas 587 (TLS) e 465 (SSL).
- Plugin de cache ou segurança: Desative temporariamente plugins de cache (W3 Total Cache, WP Rocket, LiteSpeed Cache) e plugins de segurança (Wordfence, Sucuri) para testar se eles estão interferindo.
- Limite de envio: Serviços gratuitos têm limites baixos. Se sua loja enviar mais e-mails que o permitido, os e-mails serão descartados silenciosamente.
- Spamassassin ou filtro de spam do servidor: Verifique se o servidor de hospedagem tem algum filtro de spam adicional que pode estar bloqueando os e-mails.
- Logs do servidor: Se o WP Mail SMTP mostrar “SMTP connect() failed” mesmo com as configurações corretas, peça ao suporte da hospedagem para verificar os logs do servidor na porta SMTP.
🚀 Precisa de plugins premium para aplicar este tutorial?
Tenha acesso a milhares de itens originais no Clube GPL por uma fração do preço.
🛒 Explorar catálogo →Com o WP Mail SMTP configurado corretamente, seus e-mails transacionais do WooCommerce passam a ser enviados por servidores confiáveis, com autenticação SPF, DKIM e DMARC, eliminando de vez o problema de e-mails perdidos ou marcados como spam. Agora seus clientes vão receber notificações de pedido, recuperação de carrinho e confirmações sem sustos.


