Skip to content

Tout pour WordPress, le développement web — et plus encore

💌 E-mails WooCommerce non envoyés : guide complet des causes et solutions

💌 E-mails WooCommerce non envoyés : guide complet des causes et solutions

Un client passe commande, l’argent quitte son compte, mais l’email de confirmation n’arrive jamais. Le client panique: la boutique a pris son paiement et a disparu. Cela vous semble familier en tant que propriétaire d’une boutique WooCommerce?

Le problème des «emails qui ne partent pas» figure dans le top 3 des casse-têtes techniques après le lancement d’une boutique en ligne. Les notifications administrateur de nouvelle commande peuvent ne pas arriver, les clients peuvent ne pas recevoir les confirmations d’achat, ou tous les emails peuvent se volatiliser. Les causes ne se situent généralement pas dans WooCommerce lui-même, mais dans la manière dont WordPress gère le courrier par défaut.

Passons en revue la chaîne des causes dans l’ordre, depuis les réglages banals d’expéditeur jusqu’à la connexion SMTP via Brevo. Après cela, les emails cesseront de se perdre.

💡 Aperçu rapide:

  • Vérifiez le nom et l’adresse de l’expéditeur dans les paramètres de WooCommerce (c’est le plus souvent là que se situe le problème)
  • Testez le serveur de messagerie avec l’extension WordPress Check Email
  • Consultez le journal d’envoi via WP Mail Logging pour voir si l’email a été envoyé tout court
  • Écartez les filtres anti-spam et les conflits de domaine entre l’expéditeur et le destinataire
  • Connectez SMTP via Brevo (anciennement Sendinblue) pour que les emails soient envoyés de manière fiable

1. Vérifiez le nom et l’adresse de l’expéditeur dans WooCommerce

La moitié des demandes d’assistance pour «les emails ne partent pas» se résolvent à cette étape. Par défaut, WooCommerce remplit le champ «De» avec ce qui est spécifié dans les réglages généraux de WordPress, et cela contient souvent quelque chose comme [email protected] ou même un nom d’utilisateur sans domaine.

Allez dans WooCommerce → Réglages → Onglet Emails. Faites défiler jusqu’au bloc «Options de l’expéditeur des emails»:

WooCommerce email sender settings

Ce qu’il faut vérifier:

  • Nom «De»: doit être le nom de votre boutique en caractères latins, sans caractères spéciaux. Le format MyStore fonctionne, mais MyStore@2024 ne fonctionne pas. Les serveurs de messagerie n’aiment pas les caractères spéciaux dans les noms d’expéditeur: les signes @, # et &.
  • Adresse «De»: un email réel sur votre domaine. Une adresse comme [email protected] sur le domaine de la boutique myshop.ru déclenchera les filtres anti-spam: l’email provient du domaine myshop.ru, mais l’adresse de retour est gmail.com. Les serveurs de messagerie voient la discordance et coupent la livraison.
  • Après avoir effectué les modifications, cliquez sur Enregistrer les modifications et envoyez immédiatement une commande de test.

2. Testez le serveur de messagerie de WordPress

Si les paramètres de l’expéditeur sont corrects, l’étape suivante consiste à vérifier le serveur de messagerie lui-même. Par défaut, WordPress utilise la fonction wp_mail(), qui appelle la fonction mail() de PHP sur le serveur d’hébergement. Ce mécanisme fonctionne de manière peu fiable: de nombreux hébergeurs bloquent les emails sortants via la fonction mail() de PHP pour lutter contre le spam provenant des serveurs virtuels.

L’extension Check Email offre un moyen simple de vérifier si votre serveur peut envoyer des emails. Après l’installation, allez dans Outils → Check Email, saisissez une adresse externe quelconque (par exemple, votre Gmail personnel) et cliquez sur «Envoyer un email de test».

Mail server test with the Check Email plugin

Résultat:

  • L’email est arrivé: le serveur de messagerie fonctionne, le problème se situe du côté de WooCommerce ou avec un type de notification spécifique. Vérifiez si la notification nécessaire est activée dans WooCommerce → Réglages → Emails.
  • L’email n’est pas arrivé (même pas dans les spams): le serveur n’envoie pas. Passez à l’étape 6: vous avez besoin de SMTP.

3. Vérifiez le journal d’envoi

Même si l’email de test n’est pas arrivé, il a peut-être été envoyé par le serveur puis bloqué du côté du destinataire. L’extension WP Mail Logging montre ce qui arrive à chaque email après l’appel de wp_mail().

Installez l’extension, envoyez une commande de test dans WooCommerce, puis allez dans WP Mail Log dans le panneau d’administration:

Email sending log in WP Mail Logging

Ce qu’il faut rechercher:

  • L’email figure dans le journal mais n’est pas arrivé: le serveur l’a envoyé, le filtre anti-spam du destinataire l’a bloqué. Passez à l’étape 5.
  • L’email ne figure pas dans le journal: WordPress n’a même pas essayé de l’envoyer. Soit la notification est désactivée dans WooCommerce → Emails, soit la fonction mail() de PHP est bloquée par l’hébergeur. Vous avez besoin de SMTP (étape 6).
  • Erreur dans la colonne Erreur: lisez le texte de l’erreur, il contient souvent une réponse directe (en-tête invalide, rejet du serveur SMTP de l’hébergement).

4. Changez le service de messagerie du destinataire

Une situation spécifique mais courante: les clients et l’administrateur de la boutique utilisent un email sur le même domaine. Par exemple, vous et l’acheteur avez tous les deux des adresses en @yourdomain.com. L’email part de [email protected] vers [email protected], et le serveur de messagerie «abandonne» parfois ces emails parce qu’il voit un courrier adressé à lui-même provenant d’une source externe.

La solution est simple: pour les notifications administratives, indiquez une adresse sur un service externe comme Gmail, Yandex.Mail ou Proton Mail. Dans WooCommerce → Réglages → Emails, trouvez la notification concernée et remplacez l’adresse du destinataire par une adresse externe.

5. Écartez l’arrivée dans les spams

Si les emails sont envoyés mais atterrissent dans le dossier «Spam», le problème vient de la réputation de l’adresse IP de votre hébergement. Les serveurs mutualisés des hébergements bon marché se retrouvent régulièrement sur des listes noires (DNSBL) à cause de voisins spammeurs. Résultat: Gmail et Outlook rejettent tout ce qui provient de cette IP.

Ce que vous pouvez faire:

  • Contactez votre hébergeur et signalez le problème. Les grands hébergeurs (SiteGround, Cloudways, Kinsta) résolvent cela rapidement; les plus petits peuvent baisser les bras.
  • Changez d’hébergeur: radical, mais parfois la seule solution si l’IP est sur liste noire depuis des mois.
  • Connectez le serveur SMTP de Brevo: la voie la plus fiable sans changer d’hébergeur. Les emails passent par l’infrastructure de Brevo avec une réputation propre au lieu du serveur de messagerie de l’hébergement.

La troisième option est précisément la raison d’être de la section suivante.

6. Ce qu’est SMTP et pourquoi cela résout le problème

SMTP (Simple Mail Transfer Protocol) est le protocole utilisé pour l’envoi professionnel d’emails. Lorsque vous cliquez sur «envoyer» dans Gmail, l’email passe par le serveur SMTP de Google. Lorsque WooCommerce appelle wp_mail(), l’email passe par la fonction mail() de PHP sur le serveur d’hébergement, et ce mécanisme n’utilise pas d’authentification, de chiffrement, et manque souvent d’enregistrements DKIM/SPF.

Un serveur SMTP, en revanche:

  • Authentifie chaque email avec un identifiant et un mot de passe, ce qui inspire confiance aux filtres anti-spam.
  • Chiffre la connexion avec TLS afin que l’email ne puisse pas être lu en transit.
  • Possède une réputation d’expéditeur propre et ne figure pas sur les listes noires.

Le moyen le plus accessible de connecter SMTP à WordPress en 2026 est le service Brevo (jusqu’en mai 2023: Sendinblue). L’offre gratuite de Brevo permet d’envoyer jusqu’à 300 emails par jour, ce qui est suffisant pour la plupart des boutiques WooCommerce. Les offres payantes commencent à 9 000 emails par mois.

Une vidéo vous aidera à mieux comprendre le sujet, en couvrant la configuration de Brevo sur WordPress, de l’installation à l’email de test:

7. Configurez Brevo pour l’envoi des emails WooCommerce

Brevo remplace wp_mail() par son propre serveur SMTP. Après la configuration, tous les emails WooCommerce (commandes, réinitialisations de mot de passe, notifications administrateur) passent par l’infrastructure de Brevo avec une délivrabilité garantie.

Installation de l’extension

Allez dans Extensions → Ajouter, cherchez «Brevo» (ou «Sendinblue», car l’extension est encore indexée sous son ancien nom). Installez et activez l’extension Brevo for WooCommerce:

Installing the Brevo plugin for WooCommerce

Obtenir la clé API

Inscrivez-vous sur brevo.com et confirmez votre adresse email. Dans votre tableau de bord, allez dans SMTP & API → Clés API, créez une clé et copiez-la:

Brevo API key in the dashboard

Retournez dans l’administration WordPress, ouvrez Brevo → Accueil, puis collez la clé dans le champ Clé API. L’extension se connectera à votre compte:

Brevo plugin after API key activation

Ce qui se passe après l’activation

L’extension, automatiquement:

  • Redirige tous les appels wp_mail() via le serveur SMTP de Brevo
  • Ajoute une signature DKIM et envoie les emails via TLS
  • Affiche les statistiques de délivrabilité dans le tableau de bord Brevo

Après l’activation, déclenchez une commande test dans WooCommerce. L’email devrait arriver au destinataire en 10 à 30 secondes. Si ce n’est pas le cas, consultez l’onglet Transactionnel → Logs dans le tableau de bord Brevo: vous pouvez y voir le sort de chaque email avec un statut de délivrabilité précis.

Pour les boutiques à fort volume de commandes ou pour lesquelles Brevo ne fonctionnerait pas pour une raison quelconque, nous avons un comparatif des 5 meilleures extensions SMTP pour WordPress.

⁉️🤔 Foire aux questions

Pourquoi les e-mails WooCommerce arrivent-ils en spam même avec SMTP configuré?

Le serveur SMTP de Brevo jouit d’une bonne réputation, mais les filtres anti-spam analysent aussi le contenu des messages. Un objet comme «COMMANDE CONFIRMÉE!!!» avec trois points d’exclamation a plus de chances d’atterrir en spam qu’un «Commande n°1047 confirmée». Dans WooCommerce → Réglages → E-mails, modifiez l’objet de chaque e-mail: conservez les variables comme {order_number} et {site_title}, supprimez les formulations agressives. Vérifiez également si le texte contient des liens vers des domaines blacklistés.

Puis-je utiliser Gmail SMTP à la place de Brevo?

Vous le pouvez, mais avec des limites. Le SMTP Gmail via l’extension WP Mail SMTP autorise jusqu’à 500 e-mails par jour pour un compte standard et jusqu’à 2 000 pour Google Workspace. Cependant, Google analyse le courrier sortant et peut bloquer le compte pour «activité suspecte», et les e-mails transactionnels de masse entrent dans ce critère. Pour une boutique avec 5 à 10 commandes par jour, Gmail fonctionnera, mais pour un projet en croissance, Brevo est plus fiable: aucun risque de blocage, des statistiques de délivrabilité détaillées et un suivi des ouvertures.

Les e-mails arrivent avec un retard de plusieurs minutes. Est-ce normal?

Les e-mails transactionnels via Brevo sont délivrés en 2 à 5 secondes en moyenne. Des retards de plusieurs minutes sont un signal pour diagnostiquer. Consultez l’onglet Transactionnel → Logs dans Brevo: un statut queued qui dure plus d’une minute indique une surcharge du serveur Brevo ou des problèmes avec le serveur destinataire (un Exchange d’entreprise effectue une chaîne de vérifications SPF → DKIM → DMARC). Ce n’est pas un problème de la boutique, mais si des clients se plaignent, demandez-leur d’ajouter l’adresse de la boutique à leur liste blanche.

Sendinblue a changé de nom. Mes anciens paramètres vont-ils cesser de fonctionner?

Non. Brevo a changé de marque en mai 2023 avec une rétrocompatibilité totale de l’API. Toutes les anciennes clés Sendinblue fonctionnent, et l’extension dans le dépôt WordPress est mise à jour sous le slug woocommerce-sendinblue-newsletter-subscription. La seule différence visuelle est le logo et le nom dans le panneau d’administration. Aucune migration n’est nécessaire: les paramètres SMTP, les limites et les modèles sont conservés automatiquement dans votre compte.

Que faire si je ne souhaite pas utiliser un service SMTP tiers?

Gérer votre propre serveur SMTP sur un VPS (Postfix + Dovecot) a du sens à partir de volumes supérieurs à 100 000 e-mails par mois: des dizaines d’heures de configuration et une surveillance constante de la réputation de l’IP. Une alternative consiste à connecter Amazon SES via WP Mail SMTP, pour un coût de quelques fractions de centime par millier d’e-mails, mais cela nécessite une configuration manuelle de DKIM/SPF/DMARC dans le DNS et aucune statistique visuelle de délivrabilité sans tableau de bord externe. En dessous de 100 000 e-mails, Brevo et les services similaires sont moins chers et plus simples.

Quelle solution choisir pour votre boutique

Le problème des e-mails WooCommerce n’est pas de la magie, mais une chaîne de trois maillons: les paramètres d’expédition, le serveur de messagerie de l’hébergement et le mécanisme de délivrance. Si vous parcourez la chaîne du début à la fin après avoir lu cet article, les e-mails cesseront de se perdre le jour même.

Résumé rapide par scénario:

  • Les e-mails arrivent parfois, parfois non: commencez par l’étape 1, vérifiez le nom «De» et l’adresse d’expédition. Le problème se situe le plus souvent à cet endroit.
  • Les e-mails n’arrivent pas du tout et le test E-mail ne donne rien: passez à l’étape 6 et configurez le SMTP Brevo. Cette solution présente le coût d’erreur le plus faible.
  • Les e-mails arrivent en spam: SPF/DKIM/DMARC + Brevo. Sans SMTP, la réputation de l’IP d’hébergement ne peut pas être corrigée.

Si votre volume d’e-mails dépasse 300 par jour, passez au niveau supérieur de Brevo ou étudiez les extensions SMTP alternatives. Et rappelez-vous: chaque e-mail de confirmation de commande non délivré représente un client qui ne reviendra pas.