Prestashop Webservice API: introduzione

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

  1. Abilita Webservice in Parametri avanzati.
  2. Genera chiave API per ogni integrazione (mai condividere chiavi).
  3. Limita permessi al minimo necessario (principio least privilege).
  4. Whitelist IP del sistema chiamante se possibile.
  5. Test con curl: curl -u CHIAVE: https://tuodominio.it/api/products?output_format=JSON.
  6. Verifica risposta JSON con lista prodotti.
  7. Implementa client (PHP, Python, Node) con libreria ufficiale o HTTP cliente.
  8. Gestisci errori HTTP 4xx (auth, permessi) e 5xx (server).
  9. Logga le richieste per debugging.
  10. 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.

Hai trovato utile quest'articolo?