🎨 Sysprovider Code
Sysprovider LogoWiki
🇪🇸Hosting español para ecommerce

Migración de PrestaShop 1.7 a 8.x sin pérdida de datos

Actualizado el 24 de abril de 2026

Introducción: Por qué migrar a PrestaShop 8.x

Migrar tu tienda de PrestaShop 1.7 a la versión 8.x no es un capricho: es una necesidad técnica y de negocio. La versión 1.7 dejó de recibir actualizaciones de seguridad oficiales en noviembre de 2023, mientras que PrestaShop 8.x introduce mejoras críticas como compatibilidad con PHP 8.1+, motor de búsqueda mejorado, rendimiento optimizado en base de datos y nuevas APIs para integraciones. Sin embargo, el proceso de migración sin pérdida de datos requiere una planificación meticulosa.

Este artículo te guiará paso a paso para migrar PrestaShop 1.7 a 8 de forma segura, manteniendo productos, clientes, pedidos, módulos y configuraciones. Cubriremos desde la preparación del entorno hasta la verificación post-migración.

Requisitos previos para una migración exitosa

Antes de comenzar, asegúrate de cumplir con estos requisitos:

  • Servidor compatible: PrestaShop 8.x requiere PHP 7.4 mínimo (recomendado PHP 8.1+), MySQL 5.7+ o MariaDB 10.2+.
  • Espacio en disco: Al menos el doble del tamaño actual de tu instalación para backups y pruebas.
  • Acceso SSH y FTP: Necesitarás acceso root o sudo para manipular archivos y bases de datos.
  • Módulos y temas actualizados: Verifica que todos tus módulos de pago, envío y personalizados sean compatibles con PrestaShop 8.x.
  • Herramientas de backup: mysqldump, rsync, tar, y un entorno de staging (recomendado).

[WARNING] No intentes migrar directamente desde PrestaShop 1.6 o versiones anteriores. Primero debes actualizar a 1.7.x y luego a 8.x.

Paso 1: Preparación del entorno de staging

Nunca realices la migración en producción directamente. Crea un duplicado exacto de tu tienda en un subdominio o servidor de pruebas.

# Clonar base de datos
mysqldump -u usuario -p prestashop_1_7 > backup_1_7.sql

# Copiar archivos
rsync -avz /var/www/prestashop1.7/ /var/www/prestashop8.test/ --exclude='cache/*' --exclude='var/cache/*'

Configura el entorno de staging con un nombre de base de datos diferente y ajusta el archivo app/config/parameters.php:

'database_host' => 'localhost',
'database_name' => 'prestashop_8_staging',
'database_user' => 'usuario_staging',
'database_password' => 'contraseña_segura',

[TIP] Usa un contenedor Docker con la versión exacta de PHP que necesitará PrestaShop 8 para evitar sorpresas.

Paso 2: Actualización desde PrestaShop 1.7.x a la última 1.7.x

Antes de saltar a 8.x, debes estar en la última versión de la rama 1.7 (1.7.8.10 a fecha de este artículo). Esto asegura que la estructura de base de datos esté actualizada.

  1. Actualiza manualmente desde el back office: Parámetros de la tienda > Mantenimiento > Actualizar.
  2. Si falla, usa el 1-Click Upgrade module (versión 5.0+). Descárgalo desde Addons o GitHub.
  3. Verifica que todos los módulos nativos estén actualizados.
# Si usas CLI para actualizar módulos
php bin/console prestashop:module update ps_mainmenu
php bin/console prestashop:module update ps_themeconfigurator

[INFO] Si tienes módulos personalizados, desactívalos temporalmente durante la migración para evitar conflictos.

Paso 3: Verificación de compatibilidad de módulos y temas

PrestaShop 8.x rompe la compatibilidad con muchos módulos antiguos. Usa el Módulo de Verificación de Compatibilidad (disponible en Addons) o revisa manualmente:

  • Módulos de pago: PayPal, Stripe, Redsys suelen tener versiones específicas para 8.x.
  • Módulos de envío: Correos, Seur, etc. Verifica en sus respectivos marketplaces.
  • Temas: Los themes de 1.7 no son compatibles con 8.x. Necesitarás un tema adaptado o migrar a un theme nativo.
# Listar módulos instalados desde CLI
php bin/console prestashop:module list

Si algún módulo crítico no tiene versión para 8.x, considera migrar a una alternativa o posponer la migración.

Paso 4: Migración de datos mediante el asistente de PrestaShop

PrestaShop 8.x incluye un asistente de migración integrado en el back office. Sin embargo, para migraciones complejas es mejor usar el módulo 1-Click Upgrade en modo avanzado.

  1. Descarga e instala el módulo 1-Click Upgrade v5.0+ en tu staging.
  2. Configura el canal de actualización a "Minor release" o "Major release" según tu versión objetivo.
  3. Ejecuta la simulación primero para detectar errores de compatibilidad.

Pasos detallados para la migración de datos:

# 1. Copia la base de datos de producción a staging
mysqldump -u prod_user -p prod_db > prod_backup.sql
mysql -u staging_user -p staging_db < prod_backup.sql

# 2. Actualiza el archivo parameters.php con los datos de staging
# 3. Ejecuta el script de actualización desde CLI
php upgrade/upgrade.php

[WARNING] No ejecutes upgrade.php directamente en producción. Siempre en staging.

Paso 5: Migración manual de la base de datos (método avanzado)

Si el asistente falla o tienes una base de datos muy grande, puedes realizar una migración manual:

  1. Exporta la base de datos de PrestaShop 1.7:

    mysqldump -u root -p --opt --routines --triggers prestashop_1_7 > full_backup.sql
    
  2. Importa en una base de datos limpia de PrestaShop 8.x vacía:

    mysql -u root -p prestashop_8_clean < full_backup.sql
    
  3. Ejecuta las correcciones de esquema usando el script de actualización incluido en PrestaShop 8.x:

    php install/upgrade/upgrade.php
    
  4. Verifica la integridad de tablas críticas:

    SELECT COUNT(*) FROM ps_product;
    SELECT COUNT(*) FROM ps_customer;
    SELECT COUNT(*) FROM ps_orders;
    

[TIP] Si tienes más de 100,000 productos, usa --quick en mysqldump y considera particionar la migración por lotes.

Paso 6: Migración de archivos y configuraciones

La migración de datos no solo es base de datos. También debes transferir archivos estáticos y configuraciones.

# Copiar archivos de imágenes y módulos
rsync -avz /var/www/prestashop1.7/img/ /var/www/prestashop8.test/img/
rsync -avz /var/www/prestashop1.7/modules/ /var/www/prestashop8.test/modules/ --exclude='*.git'

# Copiar archivos de temas (aunque no sean compatibles, por seguridad)
rsync -avz /var/www/prestashop1.7/themes/ /var/www/prestashop8.test/themes/

Configuraciones específicas a migrar manualmente:

  • Reglas de impuestos (tabla ps_tax_rules_group)
  • Transportistas (tabla ps_carrier)
  • Reglas de precios específicos (tabla ps_specific_price)
  • Módulos de pago (tabla ps_module y configuración en ps_configuration)

Paso 7: Pruebas exhaustivas post-migración

Antes de considerar la migración exitosa, realiza estas pruebas:

  • Funcionalidad de la tienda: Navegar como cliente, añadir al carrito, checkout completo.
  • Procesamiento de pedidos: Crear pedidos de prueba y verificar flujo de estado.
  • Módulos críticos: Probar pasarela de pago con tarjeta de prueba, envío, email.
  • Rendimiento: Medir tiempo de carga de página, uso de memoria.
  • Errores: Revisar logs en var/logs/ y error_log.
# Verificar logs de errores
tail -f /var/www/prestashop8.test/var/logs/prod.log

Paso 8: Migración a producción

Una vez que todo funciona en staging, pasa a producción:

  1. Pon la tienda en modo mantenimiento.
  2. Copia la base de datos actualizada desde staging a producción.
  3. Sincroniza archivos (excluyendo configuraciones específicas de staging).
  4. Actualiza DNS si cambiaste de servidor.
  5. Verifica en producción y desactiva el modo mantenimiento.
# Poner en mantenimiento desde CLI
php bin/console prestashop:maintenance --enable

[INFO] Programa la migración en horas de bajo tráfico y ten un plan de reversión listo.

Resolución de problemas comunes

Error de incompatibilidad de módulo

# Desactivar módulo problemático
php bin/console prestashop:module disable nombre_modulo

Base de datos corrupta

# Reparar tablas
mysqlcheck -u root -p --auto-repair prestashop_db

Problemas de caché

# Limpiar caché manualmente
rm -rf var/cache/*
php bin/console cache:clear --env=prod

Conclusión: ¿Vale la pena migrar?

La migración de PrestaShop 1.7 a 8 es un proceso complejo pero necesario para mantener tu tienda segura, rápida y compatible con las últimas tecnologías. Siguiendo estos pasos, minimizas el riesgo de pérdida de datos y aseguras una transición suave.

Recuerda: la clave está en la preparación, las pruebas en staging y la verificación meticulosa. No saltes pasos, y si tienes dudas, contrata a un especialista en migración datos PrestaShop.

La inversión en tiempo y recursos se traduce en una tienda más robusta, mejor posicionada en buscadores y preparada para el futuro. La actualizar PrestaShop no es solo un deber técnico, es una ventaja competitiva.

[TIP] Documenta todo el proceso. Si necesitas repetir la migración en el futuro, te ahorrarás horas de trabajo.

¿Necesitas ayuda?Son dos de nuestros técnicos, Agustín y Mikel, y están disponibles para resolver cualquier problema.

Hablar con ellos ahora
Agustín y Mikel