Prestashop Webservice API: introduzione
Il Webservice API di Prestashop espone le risorse del negozio (prodotti, ordini, clienti, stock) via REST con autenticazione a chiave. E' la via ufficiale per integrare gestionali, ERP, marketplace, sistemi di sincronizzazione. Vediamo come abilitarlo e fare i primi test.
Attivazione Webservice
Da Parametri avanzati > Webservice imposta Abilita il webservice di Prestashop. Crea una nuova chiave: clicca Aggiungi nuova chiave, genera, scegli risorse abilitate (products, orders, customers, etc.) con permessi GET/POST/PUT/DELETE granulari. Imposta IP whitelist se possibile per limitare l'accesso.
Endpoint e formato dati
L'endpoint base e' https://tuodominio.it/api/. Le risorse seguono il pattern REST: /api/products per la lista, /api/products/42 per dettaglio. Il formato default e' XML; aggiungi ?output_format=JSON per JSON. Autenticazione basic auth con chiave come username e password vuota.
Procedura passo-passo
- Abilita Webservice in Parametri avanzati.
- Genera chiave API per ogni integrazione (mai condividere chiavi).
- Limita permessi al minimo necessario (principio least privilege).
- Whitelist IP del sistema chiamante se possibile.
- Test con curl: curl -u CHIAVE: https://tuodominio.it/api/products?output_format=JSON.
- Verifica risposta JSON con lista prodotti.
- Implementa client (PHP, Python, Node) con libreria ufficiale o HTTP cliente.
- Gestisci errori HTTP 4xx (auth, permessi) e 5xx (server).
- Logga le richieste per debugging.
- Pianifica rate limiting lato client.
Errori comuni e come risolverli
- 401 Unauthorized: chiave errata o non abilitata; verifica in Webservice.
- 403 Forbidden: risorsa non autorizzata per la chiave; abilita risorsa.
- Risposta XML quando vuoi JSON: aggiungi parametro output_format.
- Rate limit non gestito: implementa retry exponential backoff lato client.
Domande frequenti
D: API REST o GraphQL?
R: Solo REST nativo; GraphQL via moduli terze parti.
D: Posso creare ordini via API?
R: Sì, POST su /api/orders con XML payload o JSON.
D: Limit di chiamate?
R: Nessuno nativo; implementa rate limiting via Cloudflare.
Hai bisogno di aiuto?
Se vuoi un Prestashop performante curato dal team di G Tech Group, scrivici tramite il modulo di contatto.