Introducción

¿Gestionas tu inventario o precios desde Google Sheets y luego tienes que actualizar PrestaShop manualmente? Eso es ineficiente y propenso a errores.

En este artículo aprenderás cómo integrar tu hoja de Google Sheets con PrestaShop para sincronizar stock y precios automáticamente.

Ideal para comerciantes que trabajan con proveedores, listas externas o equipos sin acceso al backoffice.

 

Índice

1. ¿Qué puedes automatizar con esta integración?

AcciónResultado
Actualizar stock desde Google SheetsEvitas entrar al backoffice
Modificar precios automáticamenteReduces errores humanos
Exportar datos de PrestaShop a SheetsVisualizas datos sin entrar al panel

2. Requisitos previos

  • Acceso a Google Cloud Console
  • Composer instalado en el servidor
  • PHP 7.4+ y PrestaShop funcionando
  • Una hoja compartida con cabecera y datos bien estructurados

3. Tablas de PrestaShop afectadas

TablaContenido
ps_productPrecios base de productos
ps_stock_availableStock por producto

4. Estructura de la hoja de cálculo

Tu hoja debe tener columnas como:

ID productoReferenciaStockPrecio
1PS0012549.90
2PS0021029.99

5. Script PHP para importar datos desde Sheets

Este script lee datos desde una hoja de cálculo y actualiza productos.

<?php
require 'vendor/autoload.php';
require '../config/config.inc.php';
require '../init.php';

$client = new Google_Client();
$client->setAuthConfig('credenciales.json');
$client->addScope(Google_Service_Sheets::SPREADSHEETS_READONLY);
$service = new Google_Service_Sheets($client);

$spreadsheetId = 'TU_ID_HOJA';
$range = 'Sheet1!A2:D';
$response = $service->spreadsheets_values->get($spreadsheetId, $range);
$values = $response->getValues();

foreach ($values as $row) {
    list($id, $ref, $stock, $precio) = $row;
    if (!is_numeric($id)) continue;

    StockAvailable::setQuantity((int)$id, 0, (int)$stock);
    $product = new Product((int)$id);
    $product->price = (float)$precio;
    $product->update();

    echo "Producto $ref actualizado: stock=$stock, precio=$precio\n";
}
?>

6. Automatización con cron

Programa este script para que se ejecute automáticamente cada cierto tiempo:

*/30 * * * * /usr/bin/php /ruta/sync-google-prestashop.php

Así se actualiza cada 30 minutos automáticamente.

7. Buenas prácticas y seguridad

  • Protege el script con autenticación por token o IP
  • No dejes las credenciales de Google visibles en producción
  • Valida que los IDs existen antes de hacer cambios
  • Guarda logs de cada ejecución por si necesitas depurar

8. Conclusión

Integrar Google Sheets con PrestaShop te permite ahorrar tiempo y errores al mantener actualizado tu catálogo.

¿Quieres que conectemos tu hoja con tu tienda sin depender de plugins de pago? 📩 Escríbenos y lo dejamos funcionando.

Ir al contenido