PrestaShop 1.7.7.X - faire fonctionner les envois d'emails

Dans les nouvelles versions de PrestaShop (à savoir supérieure à 1.7.7), la configuration des emails par défaut est basée sur l'option:

Utiliser /usr/sbin/sendmail (recommandé ; fonctionne dans la majorité des cas)

Capture d’écran 2021-04-16 à 09.15.54.png

Or, en faisant un simple test d'envoi d'email nous avons le code d'erreur suivant:

Erreur : veuillez vérifier votre configuration

Expected response code 220 but got an empty response

Capture d’écran 2021-04-16 à 09.20.08.png

Comment contourner ce problème ?

La solution la plus simple est de passer par l'option de SMTP qui consiste à faire transiter les emails de votre boutique depuis votre boite mail (pour faire simple)

En gros, si vous avez une adresse gmail, vous pouvez envoyer vos emails de la boutique PrestaShop depuis la cette boite mail

Comment faire ?

Tout d'abord rendez vous dans Paramètres Avancés > Email

Cochez ensuite

Utiliser mes propres paramètres SMTP (pour les experts uniquement)

Un cadre va s'ouvrir contenant des informations à remplir:

Capture d’écran 2021-04-16 à 09.23.27.png

Voici comment le remplir:

Nom de domaine des e-emails : Laisser vide
Serveur SMTP: si vous êtes chez gmail: smtp.gmail.com
Utilisateur SMTP: votreadresse@gmail.com
Mot de passe SMTP: mot_de_passe_adresse_email
Chiffrement: SSL (pour gmail)
Port: 465

Enregistrez.

Pour les adresse Gmail, par défaut Google n'autorise pas d'utiliser un SMTP dans un autre context pour des raisons de sécurité, il faut activer une option "Autoriser les applications moins sécurisées" voici la documentation Google https://support.google.com/accounts/answer/

Nous vons conseillons de ne pas utiliser Gmail car les restricitions de sécurité sont de plus en plus contraignantes. Il est conseillé d'utiliser son propre SMTP.

Utiliser son propre SMTP:

Nous utilisons toujours une propre adresse SMTP. La plupart du temps nous créons une adresse de type: no-reply@domain.com et faisons partir les mails depuis cette adresse.

Comment créér un mail de son nom de domaine ?

Ceci se passe dans l'interface de votre hébergeur, chaque hébergeur étant différent nous allons uniquement montrer l'exemple de l'interface Alwaysdata.

Capture d’écran 2021-04-16 à 09.37.28.png

Rendez vous dans Emails > Adresses

Capture d’écran 2021-04-16 à 09.38.17.png

Dans la section du domaine concerné (dans votre cas dev2prod.fr) cliquez sur "Ajouter une adresse email"

Capture d’écran 2021-04-16 à 09.39.11.png

Rentrez les informations du premier cadre:
domaine: le domaine en question dev2prod.fr
partie locale: no-reply (ce qui donnera l'adresse no-reply@dev2prod.fr)
Mot de passe: Un mot de passe pour l'adresse email.
g

Si les DNS de votre domaine pointent bien chez Alwaysdata, tout est automatique vous n'avez rien à faire. Tout en bas enregistrez votre adresse est l'adresse est bien créée.

Capture d’écran 2021-04-16 à 09.43.11.png

Pour tester votre email rapidement rendez vous sur le webmail en ligne (RoundCube de chez Alwaysdata) à cette adresse:https://webmail.alwaysdata.com/

Capture d’écran 2021-04-16 à 09.43.33.png

Rentrez l'adresse email et le mot de passe que vous avez mis en place et connectez vous:

Capture d’écran 2021-04-16 à 09.43.42.png

Votre adresse email est bien créée. Vous pouvez l'essayer dans ce webmail.

Testez ses mails dans PrestaShop

Retournez dans PrestaShop et nous allons mettre les paramètres SMTP de votre adresse email que vous venez de créér:

Pour connaitre les informations SMTP chez Alwaysdata, vous pouvez les voir dans L'onget Domain > Adresses dans le cadre du haut:

Capture d’écran 2021-04-16 à 09.46.04.png

Nom de domaine des e-emails : Laisser vide
Serveur SMTP: smtp-dev2prod.alwaysdata.net
Utilisateur SMTP: no-reply@dev2prod.fr
Mot de passe SMTP: mot_de_passe_adresse_email
Chiffrement: AUCUN
Port: 25

Tester le mail dans le cadre plus bas et normalement le mail de test s'envoi:

Capture d’écran 2021-04-16 à 09.48.48.png

Dans la boite mail:

Capture d’écran 2021-04-16 à 09.49.50.png

Tester ses mails sur mail-tester.com

Afin d'être sure que vos emails n'atterissent pas en spam, vous avez la possibilité de les tester grâce à mail-tester.com

Quand vous arrivez sur le site on vous propose d'envoyer un mail sur une adresse de test

Capture d’écran 2021-04-16 à 09.51.22.png

Copiez l'adresse dans le cadre et collez la dans le cadre de test de PrestaShop

Capture d’écran 2021-04-16 à 09.52.40.png

Puis retournez sur mail tester et Vérifiez le score:

Capture d’écran 2021-04-16 à 09.52.48.png

Si votre serveur est mal configuré, vous aurez une mauvaise note:

Capture d’écran 2021-04-16 à 09.56.24.png

Mais, la plupart du temps (du moins chez alwaysdata) les mails sont paramètrés à merveille.

Capture d’écran 2021-04-16 à 10.02.51.png

Pour avoir la meilleure notre possible, il faut que ce soit une adresse du domaine qui fasse l'envoi. Dans PrestaShop, si l'adresse de votre magasin est une adresse Gmail, Orange ou autre, vous n'aurez pas une bonne note car l'emmetteur de l'adresse sera Gmail (Orange ou autre), et votre domaine ne l'autorise pas par défaut. Vous pouvez rajouter une entrée DNS pour corriger cela.

Alors vos emails s'envoient mieux maintenant ?

N'hésitez pas à nous commenter tout ça.

Enjoy ;)