Para migrar los datos de WooCommerce a Supabase y alimentar una app creada con IA, extrae el catálogo como JSON estructurado a través de la API REST, sin tocar SQL. Esa es la vía limpia: la API devuelve los productos, las variantes, los precios, las categorías y las imágenes con cada campo separado, en un formato que se carga directamente en tablas de Supabase. El export XML de WordPress no sirve para esto, porque está pensado para mover un sitio a otro WordPress, no para llenar una base de datos nueva. Y si mantienes una tienda pública, conserva las URLs o redirígelas con 301 para no perder posiciones. WPBuildAI escanea la tienda en producción y devuelve el catálogo como JSON listo para importar, sin necesidad de acceso a la base de datos.

Por qué el export XML no sirve aquí

El export XML de WooCommerce es la herramienta equivocada para este trabajo. Produce un archivo WXR, pensado para importarse en otro WordPress, no para cargarse en una base de datos como Supabase, que espera filas y columnas limpias. Los campos personalizados de los productos quedan serializados en una forma que Supabase no entiende, y las variantes a menudo no salen bien. El Web Almanac 2024 refleja cuánto del contenido de WordPress vive en estructuras de plugins, justo lo que el XML maneja peor. Por eso la vía no es el export estándar, sino una extracción que entregue datos estructurados.

La vía limpia: la API REST a JSON

La forma fiable de sacar el catálogo es la API REST de WordPress, que en una tienda WooCommerce expone los productos como JSON estructurado. Cada producto llega con su nombre, descripción, precio, SKU y referencias de imagen en campos separados, que es exactamente lo que necesita una tabla de Supabase. No hace falta escribir SQL ni tocar la base directamente: basta leer los endpoints, página a página, y guardar el JSON. Cuando la API está disponible, esta es la vía más limpia, porque entrega datos ya ordenados en lugar de texto que habría que analizar.

Qué datos del catálogo extraer

Una extracción completa va más allá del nombre y el precio. Captura el nombre, la descripción, el precio (normal y de oferta), el SKU, el stock, las categorías y etiquetas, las variantes (talla, color) con su propio SKU y precio, y las imágenes con su texto alternativo. Las variantes son lo que más se pierde en una extracción descuidada, y un producto sin sus variantes es un registro a medias. Revisa el número de productos y de variantes frente a la tienda original, porque una base nueva incompleta es difícil de detectar después: parece terminada aunque le falten filas.

Cómo se cargan en Supabase

Con el JSON en mano, el siguiente paso es modelar las tablas de Supabase y cargarlo. Lo habitual es una tabla de productos y una tabla de variantes relacionada, más una de categorías, de modo que la estructura del catálogo se conserve. El JSON estructurado se mapea campo a campo a esas columnas, y las imágenes se suben al almacenamiento y se referencian desde las filas. La clave es que, al partir de datos limpios, la carga es un mapeo directo y no una limpieza manual, el mismo enfoque que en importar el inventario de WooCommerce a Supabase y exportar datos a un backend Supabase.

El frontend con IA y los datos

Una app creada con un constructor de IA se construye describiendo lo que quieres, pero necesita datos reales detrás, y ahí entra Supabase. Una vez el catálogo está en sus tablas, la app con IA se conecta a esos datos y muestra los productos, los filtra y gestiona el carrito sobre una base sólida en lugar de contenido inventado. Separar las dos capas, los datos en Supabase y la interfaz generada por IA, es lo que hace mantenible el resultado: puedes rehacer el frontend sin volver a tocar el catálogo. Por eso la extracción limpia es el cimiento de todo el proyecto, no un paso accesorio.

¿Y el SEO de la tienda?

Si la tienda nueva sustituye a una pública que ya posicionaba, el SEO importa. La plataforma no es lo que posiciona, como halló el análisis de Backlinko; lo hacen el contenido y las URLs. Así que conserva las direcciones de los productos donde puedas, y para cada URL que cambie de forma en la nueva app, pon una redirección 301 a su equivalente, según la guía de Google sobre el cambio de sitio con cambios de URL. Si la app es interna o privada, sin versión pública indexada, este paso no aplica, pero conviene decidirlo a propósito, no por descuido.

Paso a paso

  1. Inventaría el catálogo y las URLs desde la API y un rastreo de la tienda.
  2. Extrae los productos como JSON por la API REST, página a página.
  3. Modela las tablas de Supabase (productos, variantes, categorías).
  4. Carga el JSON y sube las imágenes al almacenamiento.
  5. Conecta la app con IA a los datos de Supabase.
  6. Si hay tienda pública: conserva las URLs o aplica redirecciones 301.

Ejemplo: un catálogo de 800 productos

Tomemos una tienda WooCommerce de 800 productos, muchos con variantes, que pasa a una app creada con IA sobre Supabase. La API REST se lee página a página y devuelve los 800 productos como JSON, con sus variantes, precios, SKU e imágenes, sin tocar SQL. Se modelan tres tablas en Supabase y el JSON se mapea campo a campo; las imágenes van al almacenamiento. La app con IA se conecta a esas tablas y muestra el catálogo. Como la tienda anterior posicionaba, se conservan las URLs de producto donde la app lo permite y se redirige el resto con 301. Se compara el número de productos y variantes con el original, todo cuadra. La migración funciona porque los datos salieron limpios desde el principio.

Errores frecuentes

  • Usar el export XML, que no produce datos limpios para una base como Supabase.
  • Extraer los productos pero perder las variantes y los campos personalizados.
  • No comparar el número de productos de la base nueva con el de la tienda original.
  • Mezclar los datos con la interfaz, en lugar de mantener Supabase y el frontend separados.
  • Con tienda pública: cambiar las URLs sin redirecciones 301, y perder posiciones.

Lo que conviene recordar

Para migrar los datos de WooCommerce a Supabase y alimentar una app con IA, extrae el catálogo como JSON estructurado por la API REST, sin tocar SQL, y cárgalo en tablas de Supabase modeladas para productos, variantes y categorías. El export XML no sirve, porque no entrega datos limpios para una base nueva. Mantén los datos y la interfaz separados, y comprueba el recuento frente al original. Si hay una tienda pública que posiciona, conserva las URLs o redirígelas con 301. WPBuildAI escanea la tienda y devuelve el catálogo como JSON listo para importar, sin acceso a SQL. Envía la dirección de tu tienda y te hacemos un análisis gratuito.

Sin afiliación con WordPress, Lovable, Supabase, Shopify, Wix ni Squarespace.