Étape 1 — Activation dans le back-office
Rendez-vous dans Paramètres avancés → Webservice. Activez l'option « Activer le service web de PrestaShop ». Sans cette action, toutes vos requêtes retourneront du HTML au lieu d'une réponse API structurée.
Pré-requis critique : votre boutique doit fonctionner exclusivement en HTTPS. Une clé API transmise en HTTP est une clé compromise — elle transite en clair sur le réseau.
Étape 2 — Création de la clé d'accès
Cliquez sur « Ajouter une clé ». PrestaShop génère une clé de 32 caractères alphanumériques. Conservez-la immédiatement dans un gestionnaire de secrets (Vault, .env protégé, secrets CI/CD) — elle ne sera plus affichée en clair après sauvegarde.
Étape 3 — Permissions granulaires
Pour chaque ressource, cochez uniquement les droits nécessaires :
GET— lecturePOST— créationPUT— modificationDELETE— suppressionHEAD— vérification d'existence
Une clé avec tous les droits sur toutes les ressources est une bombe à retardement. Principe du moindre privilège : votre script de synchronisation produits n'a besoin que de GET sur products et combinations.
Étape 4 — Authentification HTTP Basic
Le piège classique : l'authentification utilise la clé comme login, et un mot de passe vide. Pas de Bearer token, pas de header Authorization JSON — HTTP Basic pur.
curl -u VOTRE_CLÉ_API: https://votre-boutique.fr/api/products?output_format=JSONNotez le deux-points après la clé : il indique un mot de passe vide. L'oublier génère une erreur 401 que la documentation officielle n'explique pas clairement.



