Conecte su tienda Shopify
a GSE-Web
Su catálogo y su stock disponible van a la tienda. Los pedidos pagados llegan a GSE-Web como albaranes de salida confirmados, con stock reservado.
En resumen
El conector Shopify une una tienda Shopify a un almacén de GSE-Web. GSE-Web publica el stock en una ubicación de la tienda, la tienda envía sus pedidos. Lo configura un administrador de la organización, en el menú ADMIN › «Integraciones».
- Lo que va a la tienda: las fichas de los productos simples, de los kits y de los productos con variantes (nombre, referencia, precio, código de barras), si lo solicita, y el stock disponible del almacén publicado, colocado en la ubicación de Shopify que usted elija.
- Lo que llega a GSE-Web: cada pedido pagado (o con los estados de pago que usted elija) se convierte en un albarán de salida confirmado, con stock reservado; el comprador pasa a ser un cliente «Particular». Si lo solicita, la descripción y las fotos de los productos vinculados también se recuperan de la tienda.
- Cuándo: el stock se envía a la tienda unos segundos después de cada cambio en GSE-Web, y un pedido llega al instante por webhook. Cada 5 minutos se ejecuta una pasada completa que recupera lo que hubiera faltado.
- Lo que nunca se hace: no se elimina nada en la tienda, GSE-Web nunca escribe las líneas de un pedido y nunca emite reembolsos. Solo cumple o cancela el pedido, si lo solicita.
- Desconexión: pausa, desconexión o cierre del módulo en cualquier momento, sin perder nada; al reanudar, se recuperan los pedidos realizados entretanto.
Requisitos
Compruebe estos puntos antes de abrir la pantalla del conector: la prueba de conexión los verifica y dice con claridad lo que no encaja.
El dominio myshopify.com de la tienda
El conector se conecta al dominio de administración de la tienda, con la forma mi-tienda.myshopify.com, nunca a su dirección pública.
Una app en el Dev Dashboard
Creada en la organización propietaria de la tienda, con estos permisos: read_products, write_products, read_inventory, write_inventory, read_locations, read_orders, write_orders, write_merchant_managed_fulfillment_orders, read_publications, write_publications. Publique una versión, instale la app en la tienda y anote el ID de cliente y el secreto. Una tienda que aún tiene una app personalizada heredada usa su token de administrador (shpat_…) y su secreto de API.
Los datos de cliente protegidos declarados
El nombre, el e-mail y la dirección de los compradores son «datos de cliente protegidos» de Shopify: declare su uso en el Dev Dashboard. Sin ello, los pedidos llegan sin comprador y se convierten en puntos pendientes.
Los módulos habilitados para su organización
«Integraciones» y luego «Shopify». Su apertura se solicita a KLS-Concept. Sin «Integraciones», la entrada del menú no aparece; sin «Shopify», su tarjeta indica «No disponible para su organización».
Una cuenta ADMIN con autenticación en dos pasos
La introducción de las credenciales de la tienda se rechaza mientras la autenticación en dos pasos no esté activada en su cuenta, en «Mi información».
Un almacén real
Su stock disponible se publica en la tienda y los pedidos se convierten allí en albaranes de salida. Un almacén de ejercicio se rechaza.
La misma moneda y el mismo régimen de precios
La moneda de la tienda debe ser la de su organización, y «Precios publicados» (sin impuestos o con impuestos incluidos) debe coincidir con el ajuste «Incluir impuestos en los precios» de la tienda (Configuración › Impuestos y aranceles).
Configuración paso a paso
Seis pasos, en el orden de la pantalla.
Abrir la pantalla del conector
Menú ADMIN › «Integraciones». La tarjeta Shopify está en la categoría «Comercio electrónico». Haga clic en «Configurar» (el botón pasa a «Gestionar» una vez guardada la tienda).
Tarjeta «Tienda»
Elija el «Tipo de app»: «App del Dev Dashboard (ID de cliente y secreto)», o «App personalizada heredada (token de administrador y secreto de API)». Rellene el «Dominio de la tienda» (…myshopify.com), luego el «ID de cliente de la app» y el «Secreto de la app» (o el «Token de acceso de administrador» y el secreto), y elija el «Almacén publicado». La tarjeta recuerda los permisos que hay que marcar en la app.
Las credenciales son de solo escritura: una vez guardadas, no vuelven a mostrarse. La pantalla muestra solo algunos caracteres para reconocerlas. Para conservarlas, deje los campos vacíos; para sustituirlas, introduzca el secreto Y el ID de cliente (o el token). Con una app del Dev Dashboard, GSE-Web obtiene por sí mismo el token de acceso, válido 24 horas, y lo renueva.
Tarjeta «Ajustes»
Cada ajuste tiene un valor por defecto:
- «Precios publicados»: «Sin impuestos» por defecto, o «Impuestos incluidos».
- «Crear y actualizar las fichas de producto en la tienda»: desmarcado por defecto. Desmarcado, GSE-Web no crea ninguna ficha: solo vincula los productos ya presentes en la tienda con la misma referencia (SKU), sin distinguir mayúsculas y minúsculas.
- «Publicar el stock disponible»: marcado por defecto. Desmarcado, una ficha creada por GSE-Web no tiene su stock gestionado por Shopify.
- «Recibir los pedidos»: marcado por defecto.
- «Informar a la tienda de las entregas y cancelaciones»: marcado por defecto. Albarán entregado: pedido cumplido en la tienda, con transportista y n.º de seguimiento — Shopify avisa al cliente con su e-mail de envío. Albarán cancelado en GSE-Web: pedido cancelado en la tienda, sin reembolso.
- «Estados de pago importados»: «Pagado» por defecto. Puede añadir «Pago pendiente», «Pago autorizado» y «Pagado parcialmente» (pago contra reembolso, transferencia).
- «Antigüedad máxima de un pedido recuperado (días)»: 30 por defecto, de 1 a 90. Sin el permiso
read_all_orders, Shopify solo devuelve los pedidos de los últimos 60 días: la recuperación no va más atrás. - «Recuperar la descripción y las fotos de la tienda»: desmarcado por defecto. La tienda sigue mandando sobre la descripción y las fotos, que GSE-Web nunca le envía; marcado, se copian en la ficha del producto vinculado. Una descripción vacía en la tienda nunca borra la de GSE-Web, y una foto añadida en GSE-Web nunca se elimina.
Guardar
Haga clic en «Guardar». «Probar la conexión» y «Activar» actúan sobre la configuración guardada: mientras un cambio no esté guardado, la pantalla lo recuerda y esos dos botones esperan.
Probar la conexión y elegir la ubicación
«Probar la conexión» consulta la tienda y comprueba que las credenciales son de ese dominio, que la app tiene todos sus permisos y que la moneda y el régimen de precios coinciden. También carga la lista de ubicaciones activas de la tienda: elija la «Ubicación de la tienda» que recibe el stock y luego «Guardar». Incluso si la prueba falla, muestra los permisos que faltan y las ubicaciones, para que pueda corregirlo.
Activar
«Activar» repite la prueba (en ese momento se exige una ubicación) y luego crea cuatro suscripciones de webhook en la tienda: pedido creado, modificado, cancelado y eliminado. El estado pasa a «Activa — stock enviado en cuanto cambia, sincronización completa cada 5 minutos» («Activa — sincronización cada 5 minutos» si el stock no se publica). Los pedidos recibidos antes de la activación no se importan.
Qué se sincroniza, y quién manda
Cada campo tiene un único dueño. En un pedido de la tienda, GSE-Web solo escribe su cumplimiento o su cancelación, nunca sus líneas.
📦 Manda GSE-Web
- ✓Nombre del producto
- ✓Referencia (SKU en la tienda)
- ✓Precio de venta, sin impuestos o con impuestos según el ajuste
- ✓Código de barras
- ✓Publicado o borrador
- ✓Stock, en la ubicación elegida
🛒 Manda la tienda
- ✓Descripción (recuperada en GSE-Web como opción)
- ✓Fotos (recuperadas en GSE-Web como opción)
- ✓Colecciones y etiquetas
- ✓Impuestos
- ✓Pedidos
- ✓Reembolsos
Las reglas
- Productos simples, kits y productos con variantes. Un producto simple se publica como un producto de Shopify con una sola variante. Un kit también, con como stock el número de kits que se pueden montar con los componentes del almacén publicado. Un producto con variantes se publica como un producto con opciones (tres ejes como máximo, límite de Shopify), sin precio ni stock propios; cada una de sus variantes es una variante de Shopify, con su referencia, su precio y su stock.
- Un producto retirado de la venta en GSE-Web pasa a borrador en la tienda; nunca se elimina allí. Como Shopify no tiene estado por variante, una variante retirada de la venta se pone a stock 0. Los productos creados por GSE-Web se publican en la tienda online; una ficha existente nunca se vuelve a publicar, para respetar su decisión si la retira de un canal.
- Una ficha modificada en la tienda en un campo sobre el que manda GSE-Web se reescribe en el siguiente cambio del producto en GSE-Web. El seguimiento del stock de una variante existente, en cambio, nunca se modifica.
- Stock publicado = stock disponible del almacén publicado (físico menos reservado), redondeado a la unidad inferior, nunca negativo, colocado en la ubicación elegida — las demás ubicaciones de la tienda no se tocan. Se envía a la tienda unos segundos después de cada cambio: entrada, salida, transferencia, inventario, reserva puesta o liberada en un albarán. La pasada completa también lo vuelve a leer cada 5 minutos.
- Un pedido = un albarán de salida confirmado del almacén publicado, con «Reservar los productos para este albarán.» marcado: se reserva toda la cantidad pedida, incluso por encima del stock (lo que falta se lee «Pendiente de recepción» en el albarán), y el stock publicado en la tienda baja al instante. Se copia la dirección de entrega. Nunca un albarán parcial: si una línea da problemas (producto desconocido, variante desconocida, kit no publicable, comprador ilegible, otra moneda), no se crea ningún albarán y un punto pendiente lo explica.
- Nunca se importan: los pedidos de prueba y aquellos cuyo estado de pago es desconocido. Un pedido ya cumplido en Shopify cuando llega — venta en caja (Shopify POS), envío hecho desde la administración de Shopify — no genera albarán: haría salir la mercancía una segunda vez. Un punto pendiente le pide que registre su salida de stock en GSE-Web.
- Un comprador = un cliente «Particular», encontrado por su e-mail de un pedido a otro (código que empieza por WEB-). Un tercero ya presente en GSE-Web no se asocia: se crea un cliente «Particular».
- Pedido cancelado en la tienda (cancelado, eliminado, reembolsado o con el pago anulado): el albarán se cancela y se liberan sus reservas, salvo que alguien ya lo esté tramitando. En ese caso, un punto pendiente deja la decisión al equipo. Un pedido que Shopify ya no devuelve (más de 60 días sin
read_all_orders) nunca se toma por un pedido eliminado. - Pedido modificado en la tienda tras la importación: el cambio no se traslada al albarán; un punto pendiente le invita a revisarlo.
- Un pedido de un kit se convierte en un albarán de salida de sus componentes (cantidad × número de kits); la nota del albarán cita el kit. Un pedido de una variante da un albarán de la variante, como para cualquier producto.
- Comunicación de entregas y cancelaciones (ajuste marcado por defecto): un albarán entregado o cerrado cumple su pedido en la tienda; si salió en un envío, se transmiten el transportista y el n.º de seguimiento, y Shopify avisa al cliente con su e-mail de envío. Un albarán cancelado en GSE-Web cancela su pedido en la tienda y vuelve a poner el stock a la venta, sin reembolso ni e-mail al cliente: el reembolso se hace en Shopify. Un pedido que la tienda ya ha cumplido no se deshace, y un cumplimiento que se ha quedado parcial en Shopify no se da por hecho: un punto pendiente lo señala. Entregado parcialmente o en preparación: nada mientras el albarán no esté completo.
- Recuperación de la descripción y las fotos (ajuste desmarcado por defecto): en cada pasada, para cada producto vinculado, la descripción de la tienda se copia como texto plano en la ficha; las fotos se añaden en el orden de la tienda, siendo la primera la principal, y se retiran cuando desaparecen de la tienda. Como máximo 20 fotos por producto. No se recuperan: las colecciones, las etiquetas, los impuestos, la descripción y las fotos propias de cada variante, ni los nombres, precios y códigos de barras modificados en la tienda.
En el día a día
La pantalla del conector se lee de arriba abajo: el estado, la tienda, los ajustes, los botones, y después los puntos pendientes y el registro.
La tarjeta «Estado»
Indica en qué punto está la conexión, el nombre y la moneda de la tienda, la fecha de la última sincronización, el último error y el número de puntos pendientes. En la tarjeta de la página «Integraciones», el estado cabe en una etiqueta.
- Por activar «Configurada, aún no activada».
- Conectado «Activa — stock enviado en cuanto cambia, sincronización completa cada 5 minutos». Si el stock no se publica: «Activa — sincronización cada 5 minutos».
- En pausa «En pausa — no se envía ni se importa nada».
- Detenido — revisar «Detenida por el servidor — revise las credenciales y pruebe».
«Sincronizar ahora»
El stock se envía automáticamente a la tienda, unos segundos después de cada cambio, y los pedidos llegan en cuanto se realizan: la pantalla lo recuerda bajo el botón. Este botón solo sirve para lanzar de inmediato la sincronización completa (fichas de producto, pedidos que faltan, entregas), que si no se hace cada 5 minutos. El mensaje indica si la pasada ha terminado, si ha detectado puntos pendientes o por qué no se ha lanzado.
La tarjeta «Qué pasa entre GSE-Web y la tienda»
Bajo los ajustes, una tarjeta indica, para cada intercambio, en qué sentido va: de GSE-Web a la tienda (fichas, stock, variantes, entregas y cancelaciones), de la tienda a GSE-Web (pedidos, cancelaciones, descripción y fotos) y lo que nunca pasa (líneas de un pedido, reembolsos, colecciones, etiquetas e impuestos, nombres, precios y códigos de barras modificados en la tienda). Una línea ligada a un ajuste desmarcado se marca «Desactivado».
El «Registro»
Cada pasada figura con su tipo y su resultado. Tipos: «Fichas de producto», «Stock», «Stock en directo» (envío en cuanto cambia un stock, registrado solo si ha cambiado una cantidad), «Recuperación desde la tienda», «Recuperación de pedidos», «Retorno de los albaranes», «Pedido recibido», «Control de webhooks», «Prueba de conexión». Resultados: «Correcto», «Parcial», «Fallido», «En curso», «Interrumpido». Un clic en una pasada abre su detalle, elemento por elemento: producto creado o actualizado, stock publicado, pedido importado, cumplido o cancelado, foto recuperada, webhook recreado… (200 elementos como máximo por pasada). Las pasadas que no han cambiado nada pueden ocultarse.
Los «Puntos pendientes»
Una línea que no pasa nunca bloquea la sincronización: se convierte en un punto pendiente y el resto continúa. Los puntos de fichas y de stock desaparecen solos cuando se corrige su causa. Los puntos de pedidos tienen dos botones.
- «Reintentar» vuelve a leer el pedido en la tienda y reintenta la importación, sea cual sea su antigüedad. No se ofrece para los puntos de comunicación a la tienda (cumplimiento, cancelación en la tienda): la pasada siguiente los reintenta sola.
- «Ignorar» archiva el punto: un punto ignorado no vuelve a la lista. «Ignorar todo», en la cabecera de la lista, archiva de una vez todos los puntos abiertos, incluidos los que no se muestran, tras una confirmación.
Fichas de producto
- Causa
- Este producto es de un tipo que el conector no publica. Se publican los productos simples, los kits y los productos con variantes.
- Qué hacer
- Nada que hacer en GSE-Web. Gestione este producto directamente en la tienda.
- Causa
- El producto no tiene precio de venta en GSE-Web.
- Qué hacer
- Introduzca su precio de venta. El punto desaparece en la pasada siguiente.
- Causa
- Los precios se publican con impuestos incluidos y el producto no tiene tipo de IVA.
- Qué hacer
- Introduzca el tipo de IVA del producto.
- Causa
- La variante de la tienda que lleva esta referencia ya está vinculada a otro producto de GSE-Web, pertenece a un producto con varias variantes cuando el de GSE-Web es simple (o al revés), o la tienda lleva la misma referencia en varias variantes. Una referencia que contiene una coma tampoco puede buscarse en la tienda.
- Qué hacer
- Asegúrese de que una referencia designe un solo producto, en ambos lados.
- Causa
- Shopify ha rechazado la ficha; se muestra su código de rechazo.
- Qué hacer
- Revise el producto en la tienda a partir de ese código.
- Causa
- La ficha existe en Shopify, pero no se pudo publicar en el canal «Tienda online»: ningún cliente puede comprarla.
- Qué hacer
- Publique el producto en la tienda online en Shopify y luego «Ignorar». Compruebe también los permisos de publicación de la app (
read_publications,write_publications). Este punto no desaparece solo: GSE-Web nunca vuelve a publicar una ficha existente.
- Causa
- El producto vinculado ya no existe en la tienda.
- Qué hacer
- Vuelva a crearlo en la tienda con la misma referencia. Si ya no debe figurar en ella, escríbanos.
- Causa
- El producto ha pasado de simple a «con variantes» (o al revés): la ficha de Shopify del tipo anterior ya no le corresponde. El vínculo se ha retirado; la nueva ficha sigue el tipo actual.
- Qué hacer
- Elimine o archive la antigua ficha en Shopify y luego «Ignorar».
- Causa
- El kit no tiene ningún componente, uno de ellos está archivado o inactivo, o la cantidad de un componente está registrada en otra unidad que su unidad base. El kit no se pone a la venta.
- Qué hacer
- Corrija la composición del kit. El punto desaparece en la pasada siguiente.
- Causa
- Un producto con variantes se vende a través de sus variantes: sin variante activa, no se pone a la venta.
- Qué hacer
- Cree una variante o reactive una. El punto desaparece en la pasada siguiente.
- Causa
- La variante no puede publicarse: su producto padre no se encuentra, está archivado o aún no está publicado en la tienda, o sus ejes y valores no son válidos (Shopify acepta tres ejes como máximo). El motivo se indica entre paréntesis.
- Qué hacer
- Corrija la causa indicada, en el producto padre o en la variante. El punto desaparece en la pasada siguiente.
- Causa
- No se pudo copiar una foto de la tienda en la ficha. Motivos posibles: imagen no encontrada, formato no admitido (se aceptan JPEG, PNG, WebP y GIF), más de 5 MB o ilegible, tienda inaccesible (nuevo intento en la pasada siguiente), dirección de imagen no segura (se exige HTTPS público), más de 20 fotos (las siguientes no se recuperan).
- Qué hacer
- Compruebe la foto en los medios del producto en la tienda. El punto desaparece cuando todo está importado; el resto del producto se recupera igualmente.
Stock
- Causa
- El stock disponible tiene decimales; la tienda solo vende unidades enteras.
- Qué hacer
- Solo informativo: la tienda muestra la unidad inferior.
- Causa
- Shopify ha rechazado la cantidad; se muestra su código de rechazo.
- Qué hacer
- Revise la ficha del producto en la tienda a partir de ese código.
- Causa
- No se puede enviar el stock: no se eligió ninguna ubicación, o la tienda rechaza la elegida (eliminada, desactivada, permiso ausente). GSE-Web nunca recurre a otra ubicación.
- Qué hacer
- Elija una ubicación activa en la configuración (ponga la conexión en pausa para cambiarla), «Guardar», «Probar la conexión» y luego «Reanudar».
Pedidos
- Causa
- Una línea del pedido lleva una referencia que no existe en GSE-Web.
- Qué hacer
- Cree el producto con la misma referencia y luego «Reintentar».
- Causa
- Una línea designa una variante que GSE-Web no conoce, o la referencia del propio producto con variantes, sin su variante.
- Qué hacer
- Variante desconocida: cree la variante en GSE-Web con la misma referencia que la variante de Shopify y luego «Reintentar». Referencia del producto padre pedida sin variante: tramite el pedido a mano.
- Causa
- Sin e-mail, el comprador no puede encontrarse ni crearse como cliente.
- Qué hacer
- Añada el e-mail del cliente al pedido en la tienda y luego «Reintentar». Si ya figura, compruebe el acceso de la app a los datos de cliente protegidos.
- Causa
- Shopify no comunica a la app ni el nombre, ni el e-mail, ni la dirección del comprador mientras no haya declarado el uso de datos de cliente protegidos.
- Qué hacer
- En el Dev Dashboard, declare el acceso a datos de cliente protegidos (nombre, e-mail, dirección), publique una versión de la app y luego «Reintentar».
- Causa
- El cliente que corresponde a este comprador ha sido archivado.
- Qué hacer
- No se crea ningún albarán. Tramite este pedido a mano.
- Causa
- El pedido está en una moneda distinta de la de su organización.
- Qué hacer
- Tramite este pedido a mano.
- Causa
- En la recuperación, el pedido supera la «Antigüedad máxima de un pedido recuperado».
- Qué hacer
- «Reintentar» lo importa de todos modos.
- Causa
- El pedido ya estaba cumplido (total o parcialmente) en Shopify cuando llegó: venta en caja (Shopify POS) o envío hecho desde la administración de Shopify. Un albarán lo haría salir una segunda vez; por eso su salida de stock no se registra en GSE-Web.
- Qué hacer
- Registre la salida de stock correspondiente en GSE-Web (si no, GSE-Web volverá a publicar su antiguo disponible en la tienda) y luego «Ignorar».
- Causa
- El albarán ya está en preparación: GSE-Web no lo cancela por su cuenta.
- Qué hacer
- Decídalo con el equipo. Si el albarán debe cancelarse, libérelo y luego «Reintentar».
- Causa
- El pedido ha cambiado en la tienda después de crearse el albarán; el cambio no se traslada.
- Qué hacer
- Compare el pedido y el albarán, y corrija el albarán si es necesario.
- Causa
- La importación ha fallado; el motivo figura entre paréntesis.
- Qué hacer
- Corrija la causa indicada y luego «Reintentar».
- Causa
- El pedido contiene un kit cuya composición no es válida: ningún componente, un componente archivado o inactivo, o una unidad distinta de la unidad base. No se crea ningún albarán.
- Qué hacer
- Corrija la composición del kit y luego «Reintentar».
- Causa
- Shopify rechazó cumplir o cancelar el pedido, no lo encontró, o mantiene una parte en espera (orden de cumplimiento suspendida o programada); el mensaje lo precisa.
- Qué hacer
- Revise el pedido en la tienda y cúmplalo o cancélelo a mano si es necesario: la pasada siguiente vuelve a intentarlo sola mientras el albarán lo requiera.
- Causa
- El albarán se canceló en GSE-Web, pero la tienda ya había cumplido o cerrado el pedido: GSE-Web no lo deshace.
- Qué hacer
- Resuelva la situación con el cliente (reembolso, devolución) directamente en la tienda.
Webhooks
- Causa
- Shopify elimina una suscripción de webhook tras varios fallos de entrega, o se ha eliminado una suscripción de la app en la tienda.
- Qué hacer
- Nada que hacer: el control de webhooks, cada 6 horas, los vuelve a crear y recupera los pedidos.
Pausa, reanudación y cambios
El conector se desactiva y se vuelve a activar en cualquier momento. Algunos cambios siguen una regla, que la pantalla recuerda y que el servidor hace cumplir.
«Pausar»
Ya no se envía ni se importa nada, y no se pierde nada. El stock mostrado en la tienda sigue siendo el del último envío.
«Reanudar»
Se vuelve a comprobar la tienda (credenciales, permisos, moneda, régimen de precios, ubicación) y luego empieza la recuperación: los pedidos realizados durante la pausa se importan si tienen menos de N días («Antigüedad máxima de un pedido recuperado», 30 por defecto) y si Shopify aún los devuelve. Los más antiguos pasan a ser puntos pendientes.
Cambiar de credenciales, de régimen de precios o de ubicación
Con una conexión activa, el dominio, las credenciales, «Precios publicados» y la ubicación están bloqueados. Siga este orden: «Pausar», modificar, «Guardar», «Probar la conexión», «Reanudar». Una nueva ubicación recibe todo el stock; la anterior no se pone a cero — hágalo en Shopify, ya que la tienda suma las ubicaciones.
Cambiar de tienda
Primero «Desconectar»: se retiran las suscripciones de webhook de la tienda anterior. Después, introduzca la nueva tienda; hay que volver a elegir la ubicación.
Volver a conectar la misma tienda
Los productos, los pedidos y los clientes ya vinculados se recuperan: no se crea un segundo albarán para un pedido ya importado, y todo el stock se vuelve a enviar.
Cambiar un ajuste de las fichas
Tras cambiar «Precios publicados» o «Crear y actualizar las fichas de producto en la tienda», la pasada siguiente vuelve a leer todo el catálogo. Un cambio de «Almacén publicado» vuelve a enviar todo el stock.
«Desconectar»
Se retiran las suscripciones de webhook de la tienda y se borran las credenciales. No se elimina nada en la tienda ni en GSE-Web: los albaranes y clientes ya importados se mantienen. Si la tienda no responde, la pantalla le pide que elimine usted mismo las suscripciones de la app desde Shopify.
Cierre del módulo
Si KLS-Concept cierra el módulo para su organización, todo se detiene sin eliminar nada. Al reabrirlo, la pasada siguiente recupera los pedidos y vuelve a publicar el stock.
Seguridad y datos
Lo que guarda el conector, y cómo.
Credenciales cifradas
El secreto de la app, el ID de cliente o el token de administrador se cifran en el servidor (AES-256-GCM). Nunca vuelven a mostrarse ni se escriben en los registros. El token de 24 horas de una app del Dev Dashboard nunca se guarda.
Autenticación en dos pasos
Es obligatoria para introducir o sustituir las credenciales de una tienda.
Solo el dominio de Shopify
El conector solo llama al dominio …myshopify.com introducido, en HTTPS; no se sigue ninguna redirección. Las fotos recuperadas solo se descargan desde una dirección HTTPS pública, sin transmitir nunca el token.
Webhooks firmados
Cada webhook recibido está firmado con el secreto de la app, y su firma se comprueba antes de cualquier tratamiento. Solo sirve de señal: el pedido se vuelve a leer en Shopify, y su contenido no se conserva.
Datos del comprador
Sus datos se copian en su ficha de cliente y la dirección de entrega en el albarán. El vínculo con la tienda solo guarda una huella de su e-mail.
Nada en la exportación
Las credenciales cifradas no figuran en la exportación de portabilidad de la organización.
Resolución de problemas
El mensaje que muestra la pantalla, su causa y lo que hay que hacer. El código entre corchetes ayuda al soporte a localizar el caso. La aplicación muestra estos mensajes en inglés (o en francés); la traducción de esta página ayuda a entenderlos y el código entre corchetes permite identificarlos.
«Detenida por el servidor — revise las credenciales y pruebe»
Tras cinco rechazos de autenticación seguidos (app desinstalada, secreto regenerado, token revocado), el servidor detiene la conexión para no insistir. Revise la app en Shopify, introduzca nuevas credenciales si es necesario, «Guardar», «Probar la conexión» y luego «Activar».
- Qué hacer
- Introduzca el dominio de administración de la tienda (…myshopify.com), no su dirección pública. Se acepta la dirección de administración pegada desde el navegador.
[SHOPIFY_SHOP_DOMAIN_INVALID]
- Qué hacer
- Revise el ID de cliente y el secreto en la configuración de la app (Dev Dashboard), que la app está realmente instalada en esta tienda, y que la app y la tienda están en la misma organización.
[SHOPIFY_SHOP_AUTH_FAILED]
- Qué hacer
- Las credenciales pertenecen a otra tienda: corrija el dominio, o introduzca las credenciales de la app instalada en esta tienda.
[SHOPIFY_SHOP_DOMAIN_MISMATCH]
- Qué hacer
- En el Dev Dashboard, marque los permisos que faltan, publique una nueva versión y vuelva a instalar la app en la tienda; luego pruebe de nuevo. La pantalla muestra la lista de permisos que faltan.
[SHOPIFY_SHOP_SCOPES_MISSING]
- Qué hacer
- El conector solo une una tienda en la moneda de su organización.
[SHOPIFY_SHOP_CURRENCY_MISMATCH]
- Qué hacer
- En «Ajustes», elija para «Precios publicados» el régimen de la tienda («Incluir impuestos en los precios», en Configuración › Impuestos y aranceles). Ponga antes la conexión en pausa si está activa, guarde y pruebe.
[SHOPIFY_SHOP_PRICE_MODE_MISMATCH]
- Qué hacer
- «Probar la conexión», elija la «Ubicación de la tienda», «Guardar» y luego «Activar».
[SHOPIFY_LOCATION_REQUIRED]
- Qué hacer
- Ponga la conexión en pausa, «Probar la conexión» (la lista de ubicaciones se vuelve a cargar), elija una ubicación activa, «Guardar» y luego «Reanudar».
[SHOPIFY_LOCATION_NOT_FOUND]
- Qué hacer
- Resuelva la situación de la tienda con Shopify (suscripción, pago); la sincronización se reanuda después sola.
[SHOPIFY_SHOP_UNAVAILABLE]
- Qué hacer
- Compruebe que la tienda responde y vuelva a intentarlo.
[SHOPIFY_SHOP_UNREACHABLE]
- Qué hacer
- Vuelva a intentarlo un poco más tarde.
[SHOPIFY_SHOP_TIMEOUT]
- Qué hacer
- Espere: la pasada siguiente se reanuda sola.
[SHOPIFY_SHOP_RATE_LIMITED]
- Qué hacer
- Vuelva a intentarlo; si el mensaje se repite, escríbanos con el código que figura más abajo.
[SHOPIFY_SHOP_RESPONSE_INVALID]
- Qué hacer
- «Pausar», modificar, «Guardar», «Probar la conexión», «Reanudar».
[SHOPIFY_CONNECTION_ACTIVE_CHANGE_REFUSED]
- Qué hacer
- «Desconectar» y luego introduzca la nueva tienda.
[SHOPIFY_SHOP_CHANGE_REQUIRES_DISCONNECT]
- Qué hacer
- Siga este orden: «Pausar», modifique «Precios publicados», guarde, pruebe y luego «Reanudar». El régimen se comprueba con la tienda en la prueba y al reanudar.
[SHOPIFY_PRICE_MODE_CHANGE_REQUIRES_PAUSE]
- Qué hacer
- Introduzca el secreto con el ID de cliente (o con el token de administrador), o deje todo vacío para conservar las credenciales guardadas.
[SHOPIFY_CREDENTIALS_REQUIRED]
- Qué hacer
- Actívela en «Mi información» (la pantalla propone «Abrir «Mi información»») y vuelva a guardar.
[SHOPIFY_CONNECTION_TWO_FACTOR_REQUIRED]
- Qué hacer
- Elija un almacén real como «Almacén publicado».
[SHOPIFY_WAREHOUSE_EXERCISE_REFUSED]
- Qué hacer
- Vuelva a introducir el secreto y el ID de cliente (o el token), pruebe y luego active.
[INTEGRATIONS_CREDENTIALS_UNREADABLE]
- Qué hacer
- Espere a que termine la pasada en curso.
[INTEGRATIONS_CONNECTION_BUSY]
Preguntas frecuentes
¿Se admiten los productos con variantes?
Sí. Un producto con variantes se publica como un producto con opciones, y cada una de sus variantes como una variante de Shopify, con su referencia, su precio y su stock. Shopify acepta tres ejes como máximo (talla, color, material…). Un pedido de una variante da un albarán de la variante.
¿Se pueden conectar varias tiendas o varias ubicaciones?
No. Una organización conecta una tienda, y un almacén de GSE-Web, el «Almacén publicado», alimenta una sola ubicación de la tienda. Las demás ubicaciones de Shopify no se tocan.
¿Se comunican las entregas a la tienda?
Sí, si «Informar a la tienda de las entregas y cancelaciones» está marcado, como ocurre por defecto. Un albarán entregado cumple su pedido en la tienda; si salió en un envío, se transmiten el transportista y el n.º de seguimiento, y Shopify envía al cliente su e-mail de envío. Un albarán cancelado en GSE-Web cancela su pedido en la tienda, sin reembolso. GSE-Web nunca escribe las líneas de un pedido.
¿Se intercambian las imágenes y la descripción de los productos?
Nunca salen de GSE-Web: las fotos y la descripción se gestionan en Shopify. En cambio, si marca «Recuperar la descripción y las fotos de la tienda», se copian en GSE-Web en los productos vinculados. Las fotos y la descripción propias de cada variante no se recuperan.
¿Se recuperan las colecciones, las etiquetas y los impuestos de la tienda?
No. Siguen gestionándose en Shopify y GSE-Web no los recupera.
¿Y las ventas en caja (Shopify POS)?
Un pedido ya cumplido en Shopify cuando llega, como una venta en caja, no se convierte en albarán: la mercancía ya ha salido. Un punto pendiente le pide que registre su salida de stock en GSE-Web; si no, GSE-Web volvería a publicar su antiguo disponible en la tienda.
¿Qué ocurre si pongo en pausa o si se cierra el módulo?
No se envía ni se importa nada, y no se elimina nada. El stock de la tienda sigue siendo el del último envío. Al reanudar, se recuperan los pedidos realizados entretanto si tienen menos de 30 días (ajustable de 1 a 90, y 60 días como máximo sin el permiso read_all_orders).
¿Cuánto tarda un pedido en aparecer en GSE-Web?
Al instante, por webhook. Si un webhook se pierde, la pasada siguiente, cada 5 minutos, recupera el pedido.
¿Puede la tienda vender un producto que ya no está en stock?
El riesgo se reduce a unos segundos, sin desaparecer. El stock se envía a la tienda unos segundos después de cada salida, entrada o reserva registrada en GSE-Web, y cada pedido de la tienda reserva al instante toda su cantidad. Una venta en la tienda en el momento exacto de una salida en el almacén sigue siendo posible: se convierte en un albarán cuyo faltante se lee «Pendiente de recepción».
¿Se reconoce a un comprador que ya figura entre mis terceros?
No. El conector crea un cliente «Particular» por comprador y lo encuentra por su e-mail en los pedidos siguientes, pero no lo asocia a un tercero ya registrado en GSE-Web.
¿Se importan los pedidos realizados antes de la activación?
No. Solo se importan los pedidos recibidos después de la activación.
¿Cómo obtengo el conector?
KLS-Concept abre los módulos «Integraciones» y «Shopify» organización por organización. Escríbanos desde la página de contacto.
Conectar su tienda Shopify
Solicite la apertura del conector para su organización, o envíenos sus preguntas sobre su caso.