Analiza tus datos Prestashop de forma masiva con BigQuery
Ventajas de extraer y analizar datos de Prestashop
La principal ventaja de extraer y analizar datos de tu Prestashop es la personalización y la escalabilidad de los análisis que pueden resultar de este proceso.
En muchas ocasiones, tu ecommerce no te ofrecerá el nivel de granularidad deseado cuando se trata de analizar en detalle la información relativa a los clientes de tu tienda online.
En general, los CMS («Content Management System» de sus siglas en inglés), y en especial los CMS Ecommerce, ofrecen un abanico limitado de informes y análisis de la tienda en cuestión.
Cuando traspasas cierta línea de crecimiento, estos informes simples y agregados suelen no ser suficientes en tus ansias de analizar y optimizar tu ecommerce.
Cuando llegas a este punto, lo mejor es usar herramientas y procesos que te permitan obtener la información que necesitas para seguir con tu crecimiento y vender más.
El proceso: extraer y analizar
Consideraciones previas
El proceso que te propongo en este artículo es conceptualmente simple, aunque requerirá de ciertas habilidades de programación y analítica.
A pesar de que puedes hacer un «copiar / pegar» de lo que te explicaré, te recomiendo que si no eres competente en programación y analítica, especialmente en SQL, busques un apoyo profesional en estas áreas.
Definición del proceso de extracción y análisis
El proceso se estructurará en dos partes:
La extracción y volcado en BigQuery
La extracción de datos de Prestashop se ejecutará mediante un código de Google Apps Script, que tomando datos de la API de tu Prestashop, preparará los datos para su traspaso a BigQuery.
Análisis en BigQuery
Una vez extraídos y volcados los datos en BigQuery, llega la hora de analizarlos en esta herramienta de Google.
Este análisis se realizará en lenguaje SQL, pero también podría hacerse enteramente en LookerStudio.
Explicaré ambas opciones más abajo.
Extracción de Prestashop: la API de Prestashop
Para aquellos que no sepáis qué es una API (de sus siglas en inglés «Application Programming Interface»), baste decir que se trata de un medio por el cual una aplicación, en este caso Prestashop, permite la interacción con ella desde fuera de la aplicación misma.
Ejemplo de ello podría ser consultar los datos de la aplicación desde un excel, la web, o cualquier otra herramienta que permita conectividad y ejecución de códigos.
Prestashop, así como otras herramientas y plataformas, permiten la consulta de sus datos vía API.
Habilitar la API en tu Prestashop

Para poder activarlo, tan sólo deberemos seguir estos pasos en nuestra tienda Prestashop:
- En tu Prestashop, ve a la página “Web service” debajo del menú “Advanced Parameters”, y elije “Yes” para la opción “Enable PrestaShop Webservice”.
- Una vez has habilitado la API en tu tienda, deberás crear una clave de acceso (para entendernos, es la forma de indicarle a la API quién y cómo va a poder comunicarse con la aplicación).
- Para activar la clave, deberás abrir la página “Webservice” debajo del menú “Advanced Parameters” y hacer click en “Add new webservice key”.
- Te recomiendo que actives las opciones deseadas siempre como sólo lectura, para evitar cualquier error y borrado de datos accidental.

Puedes consultar una guía detallada del proceso de activación aquí.
¿Qué datos están disponibles en la API de Prestashop?
Prácticamente todos los datos que puedas observar mientras navegas por el «backend» de tu Prestashop, estarán disponibles en la API.
Dicho esto, debes pensar qué datos quieres analizar para poder consultar la API y extraerlos de forma diferenciada.
De esta forma, realizarás una «llamada» diferente a la API, para extraer, por ejemplo:
- Los pedidos o ventas que hayas realizado
- Información de los clientes (te recomiendo que extraigas siempre información anónima: ni nombres, ni emails, etc…)
- Información de los productos comprados, o los productos disponibles en tu tienda
- etc…
Puedes consultar una lista completa de los datos disponibles en la API aquí.
Extracción de los datos mediante Google AppScript
La herramienta de Google AppScript, te permite, entre otras cosas, realizar llamadas a las API de múltiples plataformas, entre ellas, Prestashop.
La ventaja de esta herramienta es que, siendo de Google, permite la integración nativa con otra de sus herramientas: BigQuery; lo que agiliza enormemente el proceso de extracción y análisis de datos.
Para extraer los datos de la API de Prestashop, necesitaremos un código, que explicaremos a continuación, similar a este:

Los pasos para extraer los datos mediante código son (este es tan sólo un ejemplo indicativo, deberás extraer los datos que te interesen de forma particular):
1. Configuración BigQuery y autorización de la llamada a la API
Como hemos visto en el punto «Habilitar la API en tu Prestashop«, al hacerlo, habremos obtenido una clave para operar con nuestra plataforma Prestashop.
Tomaremos el valor de la clave API para conectarnos con nuestros datos mediante el siguiente código:
projectId = «nuestro-proyecto»;
datasetId = «nuestro-dataset»;
tableId= «nuestra-tabla»;
var API_url = ‘https://nuestro-dominio.es/api’;
const DATA_ENDPOINT = «/orders?ws_key=CLAVE_API&display=[id,date_add,current_state,total_paid_real,id_customer,id_currency]&sort=[id_ASC]&output_format=JSON»;
Deberemos sustituir los valores de «nuestro-dominio» por nuestra web, y «CLAVE_API» por el valor obtenido durante la configuración de nuestra conexión.
2. Extracción de datos
Una vez autorizada la llamada, nuestro código seguirá con la extracción pura de los datos seleccionados:
query_url = API_url + DATA_ENDPOINT;
console.log(query_url);
var options = {
‘method’: ‘GET’,
‘muteHttpExceptions’: true,
‘headers’: {
‘Authorization’: ‘Bearer ‘ + API_key
}
};
var response = UrlFetchApp.fetch(query_url, options);
var content = JSON.parse(response.getContentText());
var data = content[«orders»];
Logger.log(data.length);
var dataOrders_JSON = [];
for (var i = 0; i < data.length; i++) {
ordersData = JSON.stringify({
‘stream_id’:’XXXX’,
‘order_id’ : data[i][«id»],
‘created_at’ : data[i][«date_add»],
‘currency_id’ : data[i][«id_currency»],
‘current_state’ : data[i][«current_state»],
‘customer_id’ : data[i][«id_customer»],
‘order_total’ : data[i][«total_paid_real»]
});
dataOrders_JSON.push(ordersData);
}
3. Volcado de datos en BigQuery
Extraídos los datos de la API, los volcaremos en BigQuery mediante el siguiente código:
data = dataOrders_JSON.join(«\n»);
blobData = Utilities.newBlob(data, «application/octet-stream»);
job = {
configuration: {
load: {
destinationTable: {
projectId: projectId,
datasetId: datasetId,
tableId: tableId
},
schema: {
fields: [
{name: ‘stream_id’, type: ‘STRING’},
{name: ‘order_id’, type: ‘NUMERIC’},
{name: ‘created_at’, type: ‘DATETIME’},
{name: ‘currency_id’, type: ‘NUMERIC’},
{name: ‘current_state’, type: ‘NUMERIC’},
{name: ‘customer_id’, type: ‘NUMERIC’},
{name: ‘order_total’, type: ‘FLOAT’}
]
},
sourceFormat: «NEWLINE_DELIMITED_JSON»,
writeDisposition: «WRITE_TRUNCATE»
}
}
}
job = BigQuery.Jobs.insert(job, projectId, blobData);
Logger.log(job);
Análisis de los datos en BigQuery
Una vez hemos extraído y volcado los datos de nuestro Prestashop, ya tenemos la posibilidad de iniciar el análisis de los mismos en la herramienta de Google.
Mencionado anteriormente, deberemos usar lenguaje SQL para ello, o simplemente explorar los datos mediante LookerStudio.
En ambos casos, podremos realizar análisis tales como:
- Análisis cohortes de captación de clientes
- Análisis de recurrencia
- Análisis de valor de vida de usuario
- Segmentación personalizada para campañas de todo tipo
- Análisis de desactivación y reactivación
- Análisis de cesta de productos
- y un largo etcétera
En definitiva, de lo aquí se trata es de que explotemos los datos que hemos extraído para cumplir con nuestro objetivo de negocio, o analítico.
Conclusiones
Como hemos visto, extraer y analizar datos de Prestashop es relativamente sencillo para alguien con una mínima experiencia en lenguajes javascript y SQL, extrayendo datos desde la API y explotándolos en BigQuery.
Este sistema, si bien puede parecer farragoso inicialmente, ofrece un amplio potencial a la hora de ir añadiendo datos y construyendo un almacén de datos de alto valor para el desarrollo de tu negocio Prestashop.
Sesiones de consultoría
¿No consigues solucionar
tu problema?
Reserva una sesión de consultoría de 1 hora
y te ayudaré a solucionarlo.