Lors d’une mise en ligne d’une refonte d’un site Prestashop, j’ai été confronté à un problème d’expédition des mails. La boutique était sur un serveur dédié chez Ionos. L’expédition par PHP ne fonctionnant pas, il a fallu passer par une configuration SMTP.
Les avantages d’utiliser l’expédition SMTP sur Prestashop
Expédier ses e-mails via SMTP plutôt que via PHP présente de nombreux avantages pour les entreprises et les utilisateurs. Tout d’abord, l’envoi d’e-mails via SMTP garantit une livraison fiable et rapide, ce qui est crucial pour les sites e-commerce qui en dépendent pour leur fonctionnement quotidien.
De plus, en utilisant SMTP, les entreprises peuvent bénéficier d’une meilleure sécurité des données, car les données sensibles sont transmises de manière cryptée, ce qui les protège contre les menaces de sécurité telles que les interceptions et les attaques informatiques.
Enfin, en utilisant SMTP, les entreprises peuvent éviter les limites et les restrictions imposées par les fournisseurs de services web, ce qui peut parfois entraver l’envoi d’e-mails via PHP. Utiliser SMTP pour expédier des e-mails offre une livraison fiable, une sécurité accrue, une meilleure analyse des données et une plus grande flexibilité.
Si vous avez besoin de savoir comment il faut faire pour l’hébergeur O2switch, je vous invite à lire mon article sur le sujet.
Pourquoi y a-t’il une erreur de mail entre Ionos et Prestashop ?
J’ai parcouru de nombreux forums et j’ai eu l’aide du slack officiel de Friends of Presta pour corriger le problème de mon client.
Sur certaines versions Prestashop 1.7, vous pouvez utiliser l’expédition php sans aucun problème. D’ailleurs, dans mon cas c’était une refonte et l’ancien site qui était sur une des premières 1.7 n’a jamais connu ce problème.
De ce que j’ai pu comprendre, un correctif sur les e-mails a été apporté par Prestashop, je pense vers la 1.7.7 et cette correction a posé des problèmes avec les serveurs Ionos.
Les erreurs des mails avec Ionos sur Prestashop
J’ai eu plusieurs problèmes pendant que je tentais de résoudre le problème de mon client. Dont certains que je n’avais jamais vu. Dès que les mails partent plus depuis votre boutique, c’est souvent un problème de configuration serveur.
Oui, vous pouvez avoir un problème avec un module mais cela reste assez rare sur ce type de problème. Je vous liste ci-dessous les erreurs possibles avec Ionos.
Message : Expected response code 220 but got an empty response
J’ai voulu faire un test d’envoi de mail depuis le back-office et ce message d’erreur est catégorique. Aucun mail n’est expédié par Prestashop donc il y a forcément un problème sur la configuration serveur.
Notification d’envoi du message mais je reçois rien
Prestashop a réagit sur cette expédition de mail mais vous n’avez rien reçu…
Après avoir vérifié dans vos spams, toujours rien. Dans ce cas, il s’est passé quelque chose. Assurez-vous que les logs des emails soient bien activés et vérifiez dans le back-office si un mail est parti ou pas depuis paramètres avancés > email.
Notification d’envoi, mail loggé dans Prestashop mais j’ai rien reçu
Là on a tout de bon, Prestashop indique qu’un mail est partit et en plus de ça, on a l’information que le mail est bien parti depuis le back-office. Cependant toujours rien …
Cela m’est arrivé quand je configurais le SMTP de mon client et c’est à cause d’un problème de DNS sur le nom de domaine que cela ne fonctionnait pas.
Corriger l’expédition de mail Prestashop avec Ionos
Je vais donner plusieurs étapes pour résoudre cette problématique. Il faut savoir que mon client possède un hébergement dédié et cela permet de créer des adresses mails personnalisées. Et apparemment ce n’est pas possible sur un hébergement mutualisé… Mon client doit déjà payer pour utiliser PHP 7.4, alors que tous les autres hébergeurs le laissent à disposition… Mais c’est un autre sujet, alors revenons à nos mails.
PS : Si vous le pouvez, je vous conseille de migrer chez O2switch ou 772424 pour vous garantir un hébergement Prestashop de qualité.
J’ai aussi utilisé le meilleur outil dans ce cas : https://www.mail-tester.com. Il va vous donner le résultat de l’expédition des mails et toutes les problématiques. Il sauve la vie de beaucoup de développeurs.
Créer une adresse mail sur Ionos
Je ne vais pas faire un tutoriel pour cela, vous avez toutes les infos sur Ionos. Créez un mail, par exemple contact@votrenomdedomaine.com et gardez précieusement le mot de passe.
Réglages de l’e-mail de la boutique Prestashop
Vous allez vous rendre dans paramètres de la boutique > contact et en haut vous allez cliquer sur magasin.
Il faut mettre une adresse mail avec le même nom de domaine que le votre dans l’idéal.
Configurer le SMTP Prestashop avec une adresse Ionos
C’est là que les choses vont un peu se corser pour vous. Vous allez dans paramètres avancés > mails et vous activez l’expédition par SMTP. On va renseigner les informations relatives à votre adresse mail professionnelle.
Ensuite vous avez des champs en dessous. Vous allez devoir utiliser les informations que vous donne Ionos depuis le panneau d’administration des mails. Voici dans mon cas les informations (qui doivent être identiques pour tous) :
Ensuite j’ai renseigné les informations comme ceci dans le Prestashop de mon client :
Maintenant faites un test, créez un compte, faites une demande de mot de passe oublié etc. Cela doit avoir corrigé votre problème.
Autres solutions pour les mails SMTP Ionos via Prestashop
Bon, si cela ne fonctionne toujours pas vous allez devoir effectuer des tests via le site https://www.mail-tester.com et vous allez devoir lire et comprendre le résultat. Cependant, je ne peux pas faire au cas par cas.
Vérifiez bien vos accès mails
C’est bête mais peut-être que dans le back-office Prestashop vous avez ajouté par inadvertance un espace, un mot, un chiffre en plus dans le mot de passe ou l’adresse mail.
Pour l’adresse de la boutique il faut mettre votre nom de domaine sans “https://” par exemple.
Utilisez TLS et le port 587 de Ionos
Dans ma lecture des différents forums j’ai pu lire que pour certains, ils avaient appliqué un chiffrement en TLS et ils ont renseigné le port 587 dans la configuration.
Ajoutez un champ DNS SPF TXT sur Ionos
Dans le cas de mon client, il n’y avait quasiment aucun champ DNS sur Ionos. Un peu problématique pour sa boutique Prestashop.
C’est d’ailleurs avec l’outil que j’ai cité plus haut que j’ai pu avoir la valeur à intégrer.
Ce champ est très important pour votre configuration mail.
Si ce champ existe déjà, ce n’est pas la peine de le créer, pareil pour celui d’en dessous.
Ajoutez un champ _dmarc sur Ionos
On va continuer sur la lancée des champs DNS pour rajouter ceci :
Le champ _dmarc doit avoir en valeur : “v=DMARC1; p=none”.
Les problèmes de mail Ionos sur le forum Prestashop
Et oui vous n’êtes pas tout seul dans ce périple. Je joins des sujets sur le forum officiel du cms pour vous aidez. Peut-être que des utilisateurs ont indiqué une information que j’ai manquée :
– Prestashop 1.7.7 erreur envoi de mail
– Envoi et réception de mails PS 1.7.7 avec IONOS mutualisé
– Aide paramètre SMTP avec 1and1
Une configuration SMTP est essentielle pour Prestashop
J’espère qu’en arrivant à ces lignes vous avez réussi à résoudre vos problématiques. Les soucis sur les mails peuvent être de multiples origines.
J’ai tenté de présenter au mieux les solutions que j’ai pu mettre en place au vu de la complexité du problème.
Cependant, les e-mails via SMTP sont vraiment un plus pour votre boutique au niveau de la sécurité et de la bonne expédition sur du long terme.
Vous souhaitez faire intervenir un freelance Prestashop pour l’expédition de vos mails Ionos ?
– Création d’un compte e-mail
– Utilisation outil mail tester
– Application des réglages dans le back-office de votre Prestashop
– Différents tests des e-mails.
…
Commandez un ticket d’intervention Prestashop sur mon site pour une intervention.
Si tout est configuré comme précisé dans l’article, et qu’il y a encore des soucis de délivrabilité, il faut penser à ajouter du DKIM. Pour tester ses soucis d’email, le meilleur service c’est mail-tester.com. Simple, gratuit, efficace !
Merci de ton retour Aymeric ☺️
Bonsoir,
J’ai suivi vos recommandation, mais rien ne fonctionne de mon coté.
Voici le message d’erreur que renvoie Prestashop :
Avec TLS et un port 587, en sachant que j’ai testé l’autre port, ainsi que le SSL
Erreur : veuillez vérifier votre configuration
Failed to authenticate on SMTP server with username “contact@ericjouve.com” using 2 possible authenticators. Authenticator LOGIN returned Expected response code 235 but got code “535”, with message “535 Authentication credentials invalid “. Authenticator PLAIN returned Expected response code 235 but got code “535”, with message “535 Authentication credentials invalid “.
Avez-vous une piste concernant ce message d’erreur ?
Bien à vous
Stéphane
Je n’ai pas eu à faire à cet erreur mais il y a pas mal d’infos sur les forums ou Github.
Voir ici : https://github.com/PrestaShop/PrestaShop/issues/15763
Cela peut-être dû à une version de PS et son système mail
Normalement le port est notifié dans la config Ionos comme sur ma capture dans l’article
Effectivement, vos config sont corrects mais cela ne passe pas. Je vais voir auprès de Ionos, mais ils vont me renvoyer vers PS.
Seriez-en capacité de régler le problème en gardant mon mail et Ionos comme hébergeur ?
Concernant PS la version est 8.0.4
Ha d’accord, le tutoriel est pour 1.7.
A date de ce commentaire je travaille pas encore avec Prestashop 8, trop récent pour le moment et pas assez de feedback de la communauté