PrestaShop 9: La nueva Admin API basada en API Platform — qué cambia para los desarrolladores

PrestaShop 9: Admin API basada en API Platform

Una nueva era para las integraciones en PrestaShop

PrestaShop 9 marca un antes y un después en la forma de integrar sistemas externos con tu tienda online. La nueva Admin API, construida sobre API Platform, sustituye el enfoque del antiguo webservice legacy por una arquitectura moderna, segura y extensible que sigue los estándares que el mercado demanda.

Para quienes trabajamos integrando ecommerce con ERPs, CRMs, plataformas logísticas y herramientas de marketing, este cambio es probablemente la mejora más significativa de PrestaShop 9. En este artículo explicamos qué cambia exactamente, cómo funciona la nueva API y qué implica para los desarrollos existentes.

El webservice legacy: limitaciones que todos conocemos

El webservice clásico de PrestaShop ha sido durante años la única vía oficial para conectar sistemas externos. Si has trabajado con él, conoces sus limitaciones: documentación inconsistente, autenticación básica sin estándares modernos, endpoints poco intuitivos, falta de soporte para operaciones complejas y un rendimiento que se degrada con catálogos grandes.

Muchos desarrolladores hemos tenido que construir soluciones alternativas —APIs custom en módulos, acceso directo a base de datos, webhooks caseros— para cubrir lo que el webservice no podía ofrecer. Con PrestaShop 9, gran parte de estos workarounds dejan de ser necesarios.

API Platform: la base tecnológica

La elección de API Platform como base de la nueva Admin API no es casual. API Platform es el framework PHP más utilizado para la creación de APIs RESTful modernas, y forma parte del ecosistema Symfony. Su adopción aporta:

  • Documentación OpenAPI/Swagger automática: Cada endpoint se autodocumenta siguiendo el estándar OpenAPI. Esto significa que puedes explorar y probar la API directamente desde un navegador, sin necesidad de herramientas externas.
  • Autenticación OAuth 2.0: Adiós a las API keys en plano. La nueva API utiliza OAuth 2.0 para la autenticación, proporcionando tokens de acceso con alcance limitado, expiración configurable y flujos de autorización estándar.
  • Operaciones CRUD completas: Peticiones GET, POST, PUT, PATCH y DELETE con soporte completo para filtrado, paginación y ordenación.
  • Serialización inteligente: Los datos se serializan y deserializan automáticamente, con soporte para JSON-LD, HAL y JSON plano.
  • Validación integrada: Las peticiones se validan contra el esquema definido antes de procesarse, devolviendo errores claros y estructurados.

Endpoints disponibles y cobertura actual

La Admin API de PrestaShop 9 cubre las entidades principales del ecommerce. Los endpoints disponibles en la versión actual incluyen gestión de productos y catálogo, pedidos y estados de pedido, clientes y grupos, carritos, transportistas, módulos y hooks, así como la configuración de la tienda.

Es importante señalar que la API sigue en desarrollo activo. Algunos endpoints aún no están disponibles o tienen funcionalidad limitada, pero el roadmap de PrestaShop incluye cobertura completa de todas las entidades del sistema en las próximas versiones menores.

Autenticación OAuth 2.0: cómo funciona en la práctica

Creación de clientes API

PrestaShop 9 incluye un nuevo comando CLI para gestionar clientes API:

php bin/console prestashop:api-client:create --name="Mi ERP" --description="Integración con sistema ERP"

Este comando genera un client_id y client_secret que se utilizan para obtener tokens de acceso. Cada cliente puede tener permisos granulares sobre qué recursos y operaciones puede realizar.

Flujo de autenticación

El flujo típico de autenticación sigue el patrón Client Credentials de OAuth 2.0. Primero se solicita un token enviando las credenciales del cliente, el servidor responde con un access_token y su tiempo de expiración, y ese token se incluye como Bearer en las peticiones subsiguientes. Cuando expira, se solicita uno nuevo.

Este modelo es significativamente más seguro que el webservice legacy, donde una API key comprometida daba acceso total e indefinido al sistema.

Integración con ERP, CRM y logística: casos prácticos

Sincronización de inventario con ERP

Uno de los casos de uso más comunes es la sincronización bidireccional de stock entre un ERP y PrestaShop. Con la nueva API, podemos implementar un flujo robusto donde el ERP notifica cambios de stock via webhook, PrestaShop los procesa a través de la API con validación automática, y los conflictos se resuelven mediante reglas de prioridad configurables.

En integraciones que hemos realizado con sistemas como Odoo y SAP Business One, la nueva API reduce significativamente la complejidad del código de integración y mejora la fiabilidad del proceso.

Conexión con plataformas logísticas

La gestión de pedidos y envíos a través de la API permite automatizar completamente el flujo logístico: desde la captura del pedido hasta la actualización del estado de envío y la notificación al cliente. Con la llegada del multi-transportista en PrestaShop 9.1, las posibilidades se amplían enormemente.

Integración con CRM

Los datos de clientes, pedidos e interacciones pueden sincronizarse con plataformas CRM como SuiteCRM, Salesforce o HubSpot. La API permite consultas filtradas por fecha de modificación, lo que facilita la sincronización incremental sin necesidad de procesar todo el dataset en cada ejecución.

Migración desde el webservice legacy

Si actualmente utilizas el webservice clásico de PrestaShop, la migración a la nueva Admin API no es inmediata pero sí planificable. El webservice legacy sigue disponible en PrestaShop 9 por retrocompatibilidad, aunque su uso está desaconsejado y probablemente será eliminado en futuras versiones.

Nuestra recomendación es planificar la migración de las integraciones más críticas primero (inventario, pedidos, logística) y dejar las secundarias para fases posteriores. En cada caso, el trabajo consiste en adaptar los endpoints, implementar el flujo OAuth, y aprovechar las mejoras de la nueva API (filtrado, paginación, validación).

Extensibilidad mediante módulos

Una de las ventajas más potentes de la nueva API es su extensibilidad. Los módulos de PrestaShop pueden registrar sus propios endpoints en la Admin API, siguiendo los mismos estándares y convenciones que los endpoints del core. Esto significa que un módulo de gestión de puntos de fidelización, por ejemplo, puede exponer una API completa para consultar y gestionar puntos de cliente, automáticamente documentada en Swagger y protegida por OAuth.

Conclusión: la API que PrestaShop necesitaba

La nueva Admin API de PrestaShop 9 es un salto cualitativo que posiciona la plataforma a la altura de las expectativas actuales del mercado en materia de integraciones. Para las empresas que dependen de conexiones fiables entre su ecommerce y sus sistemas de negocio, este cambio es una razón de peso para considerar la migración.

En Keliam somos especialistas en integraciones de sistemas para ecommerce. Si necesitas conectar tu tienda PrestaShop con tu ERP, CRM o plataforma logística aprovechando la nueva Admin API, contacta con nuestro equipo para una consulta técnica.

Scroll al inicio