Introduccion

En el mundo del comercio electrónico, el SKU (Stock Keeping Unit) es un identificador único para cada producto. Es fundamental para gestionar inventarios, realizar seguimientos y optimizar procesos logísticos. Sin embargo, en ocasiones, los productos no tienen un SKU asignado, o este no sigue un formato consistente. En este artículo, te explicaré cómo generar SKUs automáticamente en tres de las plataformas más populares: WooCommercePrestaShop y Magento, utilizando consultas SQL.

¿Qué es un SKU y por qué es importante?

El SKU es un código alfanumérico único que identifica un producto en un catálogo. Su importancia radica en:

  1. Gestión de inventario: Facilita el seguimiento de existencias.
  2. Órdenes y pedidos: Ayuda a evitar errores al identificar productos.
  3. Integración con sistemas: Es esencial para conectar tu tienda con herramientas de logística, marketplaces o ERPs.

Si no tienes SKUs asignados o estos no siguen un formato estándar, puedes generar automáticamente uno basado en el ID del producto. A continuación, te muestro cómo hacerlo en WooCommerce, PrestaShop y Magento.

Requisitos Previos

Antes de comenzar, asegúrate de:

  1. Acceder a la base de datos: Usa herramientas como phpMyAdmin, Adminer o la línea de comandos de MySQL.
  2. Hacer una copia de seguridad: Siempre respalda tu base de datos antes de ejecutar consultas SQL.
  3. Conocer el prefijo de las tablas: En muchos casos, las tablas tienen prefijos como wp_, ps_ o magento_. Asegúrate de usar el prefijo correcto.

Generar SKUs en WooCommerce

Estructura de la Base de Datos

En WooCommerce, los productos se almacenan en la tabla wp_posts (el prefijo wp_ puede variar), y los SKUs se guardan en la tabla wp_postmeta bajo la clave _sku.

 

Consulta SQL

UPDATE wp_postmeta pm
JOIN wp_posts p ON pm.post_id = p.ID
SET pm.meta_value = CONCAT('SKU-', LPAD(p.ID, 6, '0'))
WHERE pm.meta_key = '_sku'
AND p.post_type = 'product';

Explicación Paso a Paso

  1. UPDATE wp_postmeta pm: Indica que vamos a actualizar la tabla wp_postmeta, a la que asignamos el alias pm.
  2. JOIN wp_posts p ON pm.post_id = p.ID: Une la tabla wp_posts (alias p) con wp_postmeta usando el ID del producto.
  3. SET pm.meta_value = CONCAT(‘SKU-‘, LPAD(p.ID, 6, ‘0’)): Asigna un nuevo valor a meta_value (el SKU). Aquí:
    • CONCAT(‘SKU-‘, …): Concatena el prefijo SKU- con el ID del producto.
    • LPAD(p.ID, 6, ‘0’): Rellena el ID del producto con ceros a la izquierda hasta que tenga 6 dígitos (por ejemplo, 000123).
  4. WHERE pm.meta_key = ‘_sku’: Filtra solo las filas donde meta_key sea _sku.
  5. AND p.post_type = ‘product’: Asegura que solo se actualicen productos (no páginas ni entradas).

Generar SKUs en PrestaShop

Estructura de la Base de Datos

En PrestaShop, los SKUs se almacenan en la tabla ps_product (el prefijo ps_ puede variar).

 

Consulta SQL

UPDATE ps_product
SET reference = CONCAT('SKU-', LPAD(id_product, 6, '0'));

Explicación Paso a Paso

  1. UPDATE ps_product: Indica que vamos a actualizar la tabla ps_product.
  2. SET reference = CONCAT(‘SKU-‘, LPAD(id_product, 6, ‘0’)): Asigna un nuevo valor a la columna reference (el SKU). Aquí:
    • CONCAT(‘SKU-‘, …): Concatena el prefijo SKU- con el ID del producto.
    • LPAD(id_product, 6, ‘0’): Rellena el ID del producto con ceros a la izquierda hasta que tenga 6 dígitos.

Generar SKUs en Magento

Estructura de la Base de Datos

En Magento, los SKUs se almacenan en la  tabla catalog_product_entity.

 

Consulta SQL

UPDATE catalog_product_entity
SET sku = CONCAT('SKU-', LPAD(entity_id, 6, '0'));

Explicación Paso a Paso

  1. UPDATE catalog_product_entity: Indica que vamos a actualizar la tabla catalog_product_entity.
  2. SET sku = CONCAT(‘SKU-‘, LPAD(entity_id, 6, ‘0’)): Asigna un nuevo valor a la columna sku. Aquí:
    • CONCAT(‘SKU-‘, …): Concatena el prefijo SKU- con el ID del producto.
    • LPAD(entity_id, 6, ‘0’): Rellena el ID del producto con ceros a la izquierda hasta que tenga 6 dígitos.

Consideraciones Finales

  1. Formato del SKU: Puedes personalizar el prefijo (SKU-) o la longitud del número (6 en los ejemplos) según tus necesidades.
  2. Pruebas en un entorno de desarrollo: Antes de aplicar estos cambios en producción, prueba las consultas en un entorno de desarrollo.
  3. Optimización: Si tienes una gran cantidad de productos, asegúrate de que tu servidor pueda manejar la carga de la consulta.

Conclusión

Generar SKUs automáticamente es una tarea sencilla si conoces las estructuras de las bases de datos de WooCommerce, PrestaShop y Magento. Con las consultas SQL que te he proporcionado, puedes asegurarte de que todos tus productos tengan un SKU único y bien formateado. Esto no solo mejorará la gestión de tu inventario, sino que también te ayudará a integrar tu tienda con otras herramientas y plataformas.

Si tienes alguna duda o necesitas más detalles, ¡no dudes en dejar un comentario! 😊

Ir al contenido