Aperçu
Vous avez rencontré un problème lors de l'utilisation de l'assistant pour intégrer votre prestashop et vous obtenez la réponse indiquée dans la capture d'écran ci-dessous. Cet article explique quel est le problème et comment le résoudre car il est possible que le problème vienne de différentes raisons.
Option 1 : les services Prestashop ne sont pas activés
Parfois, ces paramètres ne sont pas définis correctement, donc prestashop n'autorisera pas un tiers à se connecter à leurs serveurs.
Accédez à votre prestashop dans "paramètres avancés" -> "webservice" et assurez-vous que les deux options sont définies sur "Oui".
L'option CGI n'est pas obligatoire si votre serveur n'est pas compatible.
Option 2 : les autorisations de la clé API ne sont pas définies
Après avoir créé une nouvelle clé API dans prestashop, vous devez vous assurer qu'elle dispose de toutes les autorisations pour que BoostMyShop puisse accéder à tout.
Pour ce faire, allez dans "paramètres avancés" -> "webservice" et sélectionnez la clé API que vous avez utilisée dans BoostMyShop. Cochez ensuite toutes les cases dans les autorisations et appuyez sur Enregistrer.
Option 3 : Autorisation d'accès HT
Parfois, Prestashop n'est pas configuré pour permettre aux services Web de se connecter à l'API.
Pour corriger cela, vous devez vous assurer que votre Apache gère le header "HTTP_AUTHORIZATION" :
1/ Si vous avez le module "SetEnv" vous pouvez le faire comme ceci:
# Requires Module# SetEnvIf Authorization "(.*)" HTTP_AUTHORIZATION=$1
2/ Ou via RewriteRules dans le dossier ou en virtual host:
# RewriteCond %{HTTP:Authorization} ^(.*)# RewriteRule .* - [E=HTTP_AUTHORIZATION:%1]
3/ Si vous avez un autre contrôleur front, vous pouvez le configurer comme ceci
RewriteRule .* /index.php [L,QSA]RewriteRule .* - [E=HTTP_AUTHORIZATION:%{HTTP:AUTHORIZATION}]