Ir al contenido
Logotipo de mrdc.tech
mrdc.tech
Guatemalan based, for all the world

Manual de usuario · Comercio electrónico

Conector Shopify para Odoo 19

De la creación de la app en Shopify a la conciliación del payout: catálogo, clientes, pedidos, inventario, entregas, reembolsos y sincronización en tiempo real, con la contabilidad cuadrada en Odoo.

Versión Odoo: 19.0 Módulo: mrdc_shopify API de Shopify: GraphQL Admin 2026-07 Autor: Rodrigo Contreras — mrdc.tech

1.Cómo usar este manual

Está escrito para la persona que va a operar la tienda todos los días, no para quien programa. No hace falta saber qué es una API para seguirlo.

El manual va en orden: primero se crea la app en Shopify, después se configura la instancia en Odoo y solo al final se sincroniza. Si se salta pasos, lo más probable es que se tope con un error que este documento ya previene.

Si usted es…Empiece por
Quien instala Capítulos 3 a 13. Ahí está todo lo que se configura una sola vez.
Quien vende Capítulos 14 a 23. El día a día: importar pedidos, entregarlos, reembolsar.
Quien soluciona problemas Capítulos 25, 26 y 30. Colas, registros y los errores más comunes con su causa.

1.1 Convenciones

  • Las rutas de menú se escriben así: Shopify → Configuración → Instancias.
  • Los nombres de campo van en negrita; los valores literales, en código.
  • Las capturas provienen de una tienda de Shopify y de una base de Odoo reales, no de maquetas.
Sobre los datos de las capturas La empresa Textiles Antigua, S.A., sus clientes y sus pedidos son ficticios y se crearon para este manual. La tienda de Shopify sí es real: es una tienda de desarrollo, y todas las operaciones que se muestran se ejecutaron de verdad contra ella.

2.Qué hace el conector

Mantiene sincronizados el catálogo, los clientes, el inventario y los pedidos entre Shopify y Odoo, y deja la contabilidad cuadrada del lado de Odoo.

2.1 Qué viaja en cada dirección

InformaciónDirecciónCuándo
Productos y variantesShopify → Odoo
Odoo → Shopify
En ambos sentidos, según quién sea el dueño del catálogo. Lo decide usted.
ImágenesShopify → Odoo
Odoo → Shopify
Junto con el producto o por separado.
ExistenciasOdoo → Shopify Odoo manda. También puede leerse de Shopify una vez, para arrancar.
ClientesShopify → Odoo Al importarlos o al llegar un pedido suyo.
PedidosShopify → Odoo Manualmente, por acción planificada o al instante por webhook.
Entregas y guíasOdoo → Shopify Cuando se valida la entrega en Odoo.
Reembolsos y cancelacionesShopify → Odoo Se convierten en notas de crédito y devoluciones de stock.
Payouts de Shopify PaymentsShopify → Odoo Se convierten en extractos bancarios para conciliar.
Panel de la tienda en Shopify
Figura 1. Panel de la tienda en Shopify. El conector no cambia nada de cómo trabaja usted en Shopify: sigue vendiendo igual, y Odoo se mantiene al día por detrás.

2.2 El recorrido completo de un pedido

Cliente compra en Shopify Llega a la cola de pedidos Se crea el pedido de venta Flujo automático: confirma y factura Se prepara y se valida la entrega La guía vuelve a Shopify

2.3 Por qué hay colas

El conector nunca escribe directamente lo que baja de Shopify. Primero lo guarda en una cola y después lo procesa registro por registro. Esto tiene tres ventajas concretas:

  • Si un pedido falla, los demás del mismo lote sí entran.
  • Queda constancia de qué se descargó y qué se hizo con cada elemento.
  • Se puede reintentar solo lo que falló, sin volver a descargar todo.
La regla de oro Si algo no aparece en Odoo, la respuesta siempre está en la cola o en los registros. Nunca hay fallos silenciosos: cada línea que no se pudo procesar deja una línea de registro explicando por qué.

3.Requisitos previos

Tres cosas antes de empezar: la tienda, el Odoo y una decisión de negocio.

3.1 Del lado de Shopify

  • Una tienda de Shopify activa (o una tienda de desarrollo, para pruebas).
  • Una cuenta de Shopify Partners para entrar al Dev Dashboard. Es gratuita.
  • Ser propietario de la tienda o tener permiso para instalar aplicaciones.

3.2 Del lado de Odoo

  • Odoo 19 con los módulos Ventas, Inventario y Contabilidad instalados.
  • El módulo mrdc_shopify instalado.
  • Un plan de cuentas cargado y un diario de ventas configurado; sin eso no se pueden facturar los pedidos.
  • El país de la compañía configurado, si va a dejar que el conector cree los impuestos.
Aplicaciones instaladas en Odoo
Figura 2. El módulo aparece en Aplicaciones como Shopify Connector. Al instalarlo se agrega el menú Shopify en la barra superior.

3.3 La decisión de negocio: ¿quién manda en el catálogo?

Es la única decisión que el conector no puede tomar por usted, y conviene tomarla antes de sincronizar nada:

EscenarioCómo se trabaja
Shopify manda El catálogo se arma en Shopify y se importa a Odoo. Es lo habitual cuando la tienda ya existía antes que el Odoo. Odoo aporta el inventario y la contabilidad.
Odoo manda Los productos se crean en Odoo y se exportan a Shopify. Es lo habitual cuando ya hay un ERP con el catálogo maestro y la tienda es un canal más.
Mixto Se importa una vez para partir de lo que ya existe, y a partir de ahí Odoo manda. Es lo más común en la práctica.
El inventario siempre lo manda Odoo Sea cual sea el escenario, las existencias se exportan de Odoo a Shopify y no al revés. La importación de existencias está pensada para el arranque, no para el día a día. Si dejara que Shopify mandara el inventario, cualquier movimiento interno de bodega quedaría fuera del cálculo.

4.Crear la app en Shopify

Aquí se equivoca casi todo el mundo, porque la forma de hacerlo cambió en enero de 2026 y la mayoría de tutoriales que hay en internet describen el método viejo.

Lo que ya no funciona Hasta 2025 se creaban «apps personalizadas» desde el propio administrador de Shopify, en Configuración → Aplicaciones → Desarrollar apps, y ahí aparecía un Admin API access token que se copiaba y pegaba. Desde el 1 de enero de 2026 ya no se pueden crear apps así. Si alguien le dice que busque ese token, le está dando instrucciones vencidas.

4.1 El método actual: el Dev Dashboard

Las apps nuevas se crean en el Dev Dashboard de Shopify y ya no entregan un token fijo: entregan un Client ID y un Client Secret. Con ese par de credenciales el conector pide el token por su cuenta y lo renueva solo, porque esos tokens caducan cada 24 horas.

  1. Entre a dev.shopify.com con su cuenta de Shopify Partners.
  2. Pulse Create app y elija Start from Dev Dashboard.
  3. Póngale un nombre reconocible, por ejemplo Conector Odoo, y pulse Create.
Lista de apps en el Dev Dashboard
Figura 3. El Dev Dashboard con la app ya creada. Debajo del nombre se ve en cuántas tiendas está instalada y qué versión está publicada.

4.2 Configurar la versión y los permisos

Entre a la app y abra la pestaña Versions. Ahí se definen tres cosas:

CampoQué poner
App URL Puede ser cualquier dirección al principio, por ejemplo https://example.com. El conector no la usa; Shopify solo exige que exista.
Webhooks API version 2026-07. No importa demasiado cuál elija: el conector no depende del formato del webhook, como se explica en el capítulo 24.
Access scopes La lista completa del capítulo 5. Es lo único que sí hay que copiar con cuidado.
Pestaña Versions de la app en el Dev Dashboard
Figura 4. Pestaña Versions. Aquí se declaran los permisos que la app va a pedir. Cada vez que se cambian hay que crear una versión nueva y reinstalar la app en la tienda.

4.3 Instalar la app en la tienda

  1. Vaya a Home, dentro de la app.
  2. Baje hasta Install app.
  3. Elija la tienda (o cree una de desarrollo) y pulse Install.
Pantalla Home de la app
Figura 5. Pantalla Home de la app. Desde aquí se instala en la tienda y se ve el estado de la instalación.
Aplicaciones instaladas en la tienda
Figura 6. La app ya instalada, vista desde el administrador de la tienda en Settings → Apps and sales channels. Si no aparece aquí, la instalación no se completó.

4.4 Copiar las credenciales

Con la app ya instalada, abra Settings dentro de la app. Ahí están el Client ID y el Secret.

Dos «Settings» distintos Es la confusión más frecuente: hay un Settings de la organización y un Settings dentro de la app. El que sirve es el segundo, el del menú lateral de la app, junto a Monitoring, Logs y Versions.
Credenciales de la app en el Dev Dashboard
Figura 7. Settings de la app. El Client ID y el Secret son las dos credenciales que se copian a Odoo. En esta captura están difuminadas a propósito. El botón Rotate genera un secreto nuevo si el actual se filtra.
No busque ningún token En esa pantalla no hay ni habrá un «Admin API access token». No hace falta: con el Client ID y el Client Secret basta. El conector se encarga del resto.

5.Los permisos que hay que conceder

Shopify llama scopes a los permisos. Si falta uno, la operación que lo necesita falla con un error de acceso denegado; el resto sigue funcionando.

5.1 Permisos obligatorios

Sin estos el conector no puede trabajar:

read_products,write_products,read_orders,write_orders,
read_customers,write_customers,read_inventory,write_inventory,
read_locations,read_fulfillments,write_fulfillments,
write_merchant_managed_fulfillment_orders,
read_publications,write_publications
No hace falta listar los read_ por separado Shopify considera que write_products ya incluye read_products. La prueba de conexión del conector lo tiene en cuenta, así que no le va a reportar como faltantes los permisos de lectura que ya están cubiertos por su equivalente de escritura.

5.2 Permisos opcionales

PermisoPara qué
read_all_orders Leer pedidos de más de 60 días. Si va a importar histórico, es obligatorio.
read_shopify_payments_accounts
read_shopify_payments_payouts
Payouts de Shopify Payments. Hacen falta los dos.
read_returns · write_returns Devoluciones gestionadas desde Shopify.
read_shipping Leer los servicios de transportista configurados en la tienda.
La trampa de los permisos de Shopify Payments Si intenta leer payouts con solo read_shopify_payments_payouts, Shopify responde ACCESS_DENIED y en el mensaje le dice que necesita read_shopify_payments. Ese permiso ya no se puede solicitar: Shopify lo dividió en permisos más específicos y el Dev Dashboard lo rechaza con «Contains invalid scopes». El que sí funciona es read_shopify_payments_accounts. Es un mensaje de error que quedó desactualizado del lado de Shopify.

5.3 La lista para copiar y pegar

read_all_orders,write_customers,write_fulfillments,write_inventory,
read_locations,write_merchant_managed_fulfillment_orders,write_orders,
write_products,write_publications,write_returns,read_shipping,
read_shopify_payments_accounts,read_shopify_payments_payouts
Cambiar permisos exige reinstalar Cada vez que agregue o quite un permiso tiene que crear una versión nueva de la app y volver a instalarla en la tienda. Mientras no lo haga, la app sigue trabajando con los permisos viejos.

6.Crear la instancia en Odoo

Una instancia es una tienda de Shopify conectada. Si maneja varias tiendas, crea una instancia por cada una.

6.1 El menú del conector

Tras instalar el módulo aparece el menú Shopify, organizado en cuatro bloques:

MenúContiene
Operaciones El asistente de importar y exportar, los pedidos, los productos, las variantes y los reportes de payout.
Colas Las cuatro colas: pedidos, productos, clientes y exportación de existencias.
Registros Las líneas de registro y los libros de registro.
Configuración Instancias, ubicaciones, flujos de trabajo, pasarelas de pago y webhooks. Solo visible para el administrador del conector.
Menú Shopify en Odoo
Figura 8. El menú Shopify con sus cuatro bloques. Es el punto de entrada a todo el conector.

6.2 Alta de la instancia

Vaya a Shopify → Configuración → Instancias → Nuevo y llene los datos de conexión:

CampoEjemploNotas
NombreTienda Antigua Shopify Solo para identificarla dentro de Odoo.
Dominio de la tiendami-tienda.myshopify.com El dominio myshopify.com, no el dominio comercial. Si pega la URL completa, el conector la limpia solo.
AutenticaciónCredenciales de la app Déjelo así salvo que tenga una app antigua anterior a 2026.
Client ID y Client Secret Los del Dev Dashboard (figura 5).
Secreto de webhooks Opcional. Si lo deja vacío se usa el Client Secret, que es lo correcto en la mayoría de los casos.
Versión de la API2026-07 Viene puesta. Solo cámbiela si mrdc.tech se lo indica.
Ficha de la instancia con las credenciales
Figura 9. Ficha de la instancia. A la izquierda las credenciales; a la derecha, los datos que Shopify devuelve al probar la conexión. Arriba a la derecha, el estado de la conexión.
Instancias en vista kanban
Figura 10. Vista kanban de instancias. Con varias tiendas conectadas, esta pantalla resume el estado de conexión de cada una.

6.3 Probar la conexión

Pulse Probar conexión. El conector hace dos cosas: pide un token con sus credenciales y consulta qué permisos le concedió la tienda.

ResultadoQué significa
Conectada en verde Todo bien. Se rellenan el nombre de la tienda, su moneda y su zona horaria.
Aviso amarillo Conectó, pero faltan permisos obligatorios. Los nombra uno por uno. Corrija los scopes en el Dev Dashboard y reinstale la app.
Error No pudo conectar. Casi siempre es el dominio mal escrito o credenciales de otra tienda.
El token se gestiona solo Al conectar aparece El token vence el con una fecha unas 24 horas adelante. No hay que hacer nada con eso: el conector renueva el token cuando caduca y, si Shopify lo rechaza a mitad de una operación larga, lo renueva y reintenta esa misma llamada.

7.Ubicaciones y almacenes

Es el primer paso después de conectar y el que más problemas evita más adelante.

Shopify guarda el inventario en ubicaciones; Odoo, en almacenes. El conector necesita saber qué ubicación corresponde a qué almacén para dos cosas: saber de dónde descontar el inventario que exporta y desde qué almacén entregar cada pedido.

  1. En la ficha de la instancia, pulse Importar ubicaciones.
  2. Abra la pestaña Ubicaciones.
  3. Para cada ubicación, elija el Almacén de Odoo que le corresponde.
  4. En Almacenes que suman existencias indique de qué almacenes se debe sumar el stock que se publica en esa ubicación.
Pestaña de ubicaciones de la instancia
Figura 11. Pestaña Ubicaciones. Cada ubicación de Shopify se enlaza con un almacén de Odoo. La columna de la derecha permite sumar varios almacenes en una sola ubicación.
Ubicaciones en el administrador de Shopify
Figura 12. Las mismas ubicaciones vistas desde Shopify, en Settings → Locations. Los nombres deben coincidir con los que importó el conector.
Almacenes de Odoo
Figura 13. Los almacenes de Odoo con los que se enlazan las ubicaciones. Un almacén puede recibir pedidos de varias ubicaciones de Shopify, y una ubicación puede sumar el stock de varios almacenes.
Si no mapea las ubicaciones La exportación de existencias no sabrá qué cantidad publicar y los pedidos se entregarán todos desde el almacén por defecto de la instancia, aunque en Shopify se hayan asignado a otra ubicación.

8.Configuración de ventas

La pestaña Ventas controla cómo entran los pedidos y con qué valores por defecto se crean.

Pestaña Ventas de la instancia
Figura 14. Pestaña Ventas. A la izquierda, cómo se importan los pedidos; a la derecha, los valores por defecto que se aplican al crearlos en Odoo.
CampoPara qué sirve
Prefijo de pedidos Se antepone al nombre del pedido de Shopify. Con SH, el pedido #1003 se llama SH#1003 en Odoo. Sirve para distinguir de un vistazo lo que viene de la tienda.
Usar la secuencia de Odoo Si lo activa, los pedidos se numeran con la secuencia normal de Odoo y el número de Shopify queda solo como referencia. Se recomienda dejarlo desactivado: es más fácil rastrear un reclamo cuando el número coincide en ambos sistemas.
Importar pedidos posteriores a Fecha de corte. Ningún pedido anterior se importa. Póngala en la fecha de arranque para no arrastrar el histórico completo.
Estados de pedido a importar Filtra por estado de preparación. Con Cualquiera entran todos. Los pedidos cancelados nunca entran por esta vía: tienen su propia operación.
Usar la moneda de presentación Si sus clientes pagan en su propia moneda, active esto para que Odoo registre el importe que el cliente pagó realmente y no el convertido a la moneda de la tienda.
Notificar al cliente Cuando se envía la entrega a Shopify, pide que Shopify mande el correo de envío al cliente. Desactívelo si ya envía esa notificación desde Odoo, para no duplicar.
Almacén Almacén por defecto de los pedidos que no traen ubicación asignada.
Lista de precios Lista base de la instancia. Si un pedido llega en otra moneda, el conector busca o crea automáticamente una lista en esa moneda; véase el capítulo 28.
Cliente por defecto del punto de venta Cliente que se usa cuando el pedido no trae comprador, típico de las ventas de mostrador con el POS de Shopify.

9.Configuración de productos

Cómo decide el conector que un producto de Shopify y uno de Odoo son el mismo.

Pestaña Productos de la instancia
Figura 15. Pestaña Productos. El campo más importante es Emparejar productos por.

9.1 El emparejamiento

OpciónCómo empareja
Referencia interna El SKU de Shopify contra la referencia interna de Odoo. Es la opción recomendada.
Código de barras El código de barras de Shopify contra el de Odoo. Útil si su catálogo se maneja por EAN.
Referencia interna o código de barras Prueba primero el SKU y, si no encuentra, el código de barras.
Sin SKU no hay emparejamiento fiable Si sus variantes de Shopify no tienen SKU, el conector no puede saber a qué producto de Odoo corresponden y creará duplicados o dejará el pedido sin importar. Poner SKU a todas las variantes antes de la primera sincronización es la inversión de tiempo que más problemas ahorra.

9.2 Creación automática

CampoEfecto
Crear productos automáticamente Si al importar un pedido aparece un producto que no existe en Odoo, lo crea en lugar de dejar el pedido fallido. Cómodo, pero puede llenar el catálogo de productos improvisados: actívelo solo si confía en su catálogo de Shopify.
Sincronizar imágenes de producto Trae las imágenes junto con el producto.
Actualizar la categoría del producto Si el producto ya existe en Odoo, le cambia la categoría según lo que diga Shopify.
Crear la categoría automáticamente Crea en Odoo las categorías que no existan, tomando el nombre de la categoría o del tipo de producto de Shopify.
Campo de existencias Qué cantidad de Odoo se publica: free_qty (disponible, descontando lo reservado), qty_available (a mano) o virtual_available (previsto). Lo habitual es free_qty, para no vender lo que ya está comprometido.

10.Productos especiales

Un pedido de Shopify no trae solo artículos: trae envío, descuentos, propinas y a veces aranceles. Cada uno de esos conceptos necesita un producto en Odoo donde aterrizar.

Pestaña de productos especiales
Figura 16. Pestaña Productos especiales. El módulo crea estos productos al instalarse; solo hay que revisarlos.
ProductoCuándo se usa
Producto de envío Por cada línea de envío del pedido. Si no lo configura, el cobro del envío se pierde y el total de Odoo no cuadrará con el de Shopify.
Producto de descuento Para descuentos que no se pueden repartir entre las líneas.
Producto de propina Cuando el cliente deja propina al pagar.
Producto de aranceles En ventas internacionales con impuestos de importación.
Producto de ajuste de reembolso Para las diferencias que Shopify agrega a un reembolso y no corresponden a ninguna línea.
Producto de tarjeta de regalo Cuando se vende una tarjeta de regalo.
Servicio y producto genéricos Comodines para líneas de pedido sin variante asociada, típicas de productos personalizados.

11.Flujos de trabajo automáticos

Esta es la pieza que decide cuánto trabajo manual queda después de importar un pedido. Bien configurada, un pedido pagado llega a Odoo ya confirmado y facturado.

11.1 Qué es un flujo de trabajo

Un flujo es una receta de pasos que se ejecutan sobre el pedido recién importado:

Confirmar el pedido Validar la entrega Crear la factura Validar la factura Registrar el pago
Ficha de un flujo de trabajo
Figura 17. Ficha de un flujo de trabajo. Cada casilla activa un paso. La Política de entrega decide si se entrega apenas haya existencias o solo cuando el pedido esté completo.
Cada paso va por separado Si un paso falla, los anteriores no se deshacen. Por ejemplo: si el pedido se confirma pero la factura no se puede crear porque el período contable está cerrado, el pedido queda confirmado y en los registros aparece exactamente qué paso falló y por qué. No hay que volver a importar nada.

11.2 Asignar el flujo según el estado de pago

No todos los pedidos merecen el mismo tratamiento: uno pagado se puede facturar, pero uno pendiente de pago no. Por eso el flujo se asigna combinando la pasarela de pago con el estado financiero del pedido.

Configuración de flujos de trabajo en la instancia
Figura 18. Pestaña Flujos de trabajo. Cada línea combina pasarela y estado financiero. Si deja la pasarela vacía, la regla aplica a todas.
Estado financieroFlujo recomendado
PagadoConfirmar y facturar. El dinero ya entró.
Parcialmente pagadoConfirmar y facturar, si acepta pagos parciales.
PendienteSolo confirmar. Se factura cuando el pago se confirme.
AutorizadoSolo confirmar. El cargo está retenido pero no cobrado.
Reembolsado · Anulado Sin flujo. Deje esas líneas sin configurar: el pedido entra en borrador para que alguien lo revise.
Lista de flujos de trabajo
Figura 19. Flujos disponibles. El módulo trae dos configurados: uno que solo confirma y otro que además factura. Puede crear los que necesite.

11.3 Las pasarelas de pago

El conector crea la pasarela sola la primera vez que ve un pedido pagado con ella. No hay que darlas de alta a mano: haga una importación de prueba y luego configure los flujos sobre las pasarelas que aparezcan.

Lista de pasarelas de pago
Figura 20. Pasarelas detectadas. El código es el que Shopify reporta en el pedido; el nombre se puede editar.

12.Clientes, reembolsos y payouts

Tres pestañas cortas de la instancia que definen comportamientos importantes.

12.1 Clientes

Pestaña de clientes de la instancia
Figura 21. Pestaña Clientes.

Importar el cliente como empresa hace que, cuando la dirección de Shopify trae un nombre de compañía, el contacto se cree en Odoo como empresa en lugar de como persona. Actívelo si vende mayoreo; déjelo desactivado si vende al consumidor final.

12.2 Reembolsos y devoluciones

Pestaña de reembolsos de la instancia
Figura 22. Pestaña Reembolsos. Controla qué pasa en Odoo cuando se reembolsa en Shopify.
CampoEfecto
Crear devolución de stock al reembolsar Genera una devolución de mercancía por las unidades reembolsadas. Solo se devuelve lo que Shopify marcó para reingresar a inventario, no todo el pedido.
Validar la devolución de stock La valida automáticamente. Desactívelo si prefiere revisar físicamente lo que regresa antes de darle entrada.
Ubicación de devolución Dónde ingresa la mercancía devuelta. Útil si tiene una zona de cuarentena.
Registrar el pago de la nota de crédito Marca la nota de crédito como pagada automáticamente, porque el dinero ya salió por Shopify.

12.3 Payouts

Pestaña de payouts de la instancia
Figura 23. Pestaña Payouts. El diario de payouts debe ser un diario de tipo banco.

Un payout es cada transferencia que Shopify Payments hace a su cuenta bancaria. El conector los descarga con su detalle de comisiones y los convierte en extractos bancarios. Se explica en el capítulo 23.

13.Notificaciones y sincronización

Cómo enterarse de que algo falló sin tener que estar revisando.

Pestaña de notificaciones
Figura 24. Pestaña Notificaciones. Si una cola falla varias veces seguidas, Odoo le abre una actividad a los responsables.

Con Crear actividad programada activo, cuando una cola falla tres veces el conector abre una actividad a los usuarios responsables, con el plazo que indique. Es la forma de que un problema de sincronización no pase inadvertido durante días.

Pestaña de sincronización
Figura 25. Pestaña Sincronización. Fechas de la última vez que se ejecutó cada operación y lista de permisos concedidos por Shopify.
Para qué sirven esas fechas Cada operación recuerda cuándo se ejecutó por última vez y, la siguiente vez, solo pide a Shopify lo que cambió desde entonces. Por eso la primera importación tarda y las siguientes son rápidas. Si necesita reimportar todo, borre la fecha correspondiente o indique un rango en el asistente.

14.El asistente de operaciones

Es el mando único: desde una sola pantalla se lanza cualquier importación o exportación.

Está en Shopify → Operaciones → Importar / Exportar. Elija la instancia, elija la operación y pulse Ejecutar. El formulario cambia según lo que elija: si la operación admite rango de fechas, aparecen las fechas; si trabaja sobre productos concretos, aparece el selector de productos.

Asistente de importación y exportación
Figura 26. Asistente de operaciones. Al cambiar la operación se ajustan los campos y las fechas se rellenan solas con la última sincronización.
OperaciónQué hace
Importar productosBaja el catálogo a una cola de productos.
Importar clientesBaja los clientes a una cola de clientes.
Importar pedidosBaja los pedidos a una cola de pedidos.
Importar pedidos enviadosSolo los ya preparados en Shopify.
Importar pedidos canceladosRefleja en Odoo las cancelaciones hechas en Shopify.
Importar existenciasTrae el inventario de Shopify a Odoo. Solo para el arranque.
Importar ubicacionesActualiza la lista de ubicaciones.
Importar reportes de payoutBaja los payouts de Shopify Payments.
Exportar productosCrea en Shopify los productos que aún no existen ahí.
Actualizar productosActualiza en Shopify los que ya existen.
Exportar existenciasPublica en Shopify el inventario de Odoo.
Actualizar el estado de envíoManda a Shopify las entregas validadas en Odoo.
Publicar / Despublicar productosLos muestra u oculta en los canales de venta.
Importar un pedido concreto En Importar pedidos hay un campo de Referencias de pedido. Si escribe #1003, #1004 el conector trae exactamente esos dos e ignora las fechas. Es la forma rápida de resolver el reclamo de «este pedido no me apareció».

15.Importar productos

Trae de Shopify los productos, sus variantes, sus atributos y sus imágenes.

15.1 Cómo ejecutarlo

  1. Abra el asistente y elija Importar productos.
  2. Deje las fechas vacías para traer todo el catálogo la primera vez.
  3. Pulse Ejecutar. Se abre la cola creada.
  4. Pulse Procesar la cola, o espere a que la acción planificada la procese sola.
Catálogo en el administrador de Shopify
Figura 27. El catálogo tal como está en Shopify antes de importar.
Productos de Shopify en Odoo
Figura 28. El mismo catálogo ya en Odoo, en Shopify → Operaciones → Productos. La columna Variantes sincronizadas dice cuántas variantes quedaron emparejadas.

15.2 Qué crea exactamente

Por cada producto de Shopify el conector mantiene tres registros en Odoo:

RegistroPara qué
Producto de Odoo El producto de siempre, con su categoría, precio e inventario.
Producto de Shopify La capa de enlace: guarda el identificador de Shopify, el handle, las etiquetas y el estado de publicación.
Variante de Shopify Una por variante: guarda el SKU, el identificador de la variante y el del artículo de inventario, que es lo que permite exportar existencias.
Ficha de producto de Shopify con sus variantes
Figura 29. Ficha del producto en la capa de Shopify. Abajo, las variantes con su SKU, su precio y sus identificadores. Arriba, los botones para exportar, actualizar, publicar y despublicar.
Variantes de Shopify en Odoo
Figura 30. Todas las variantes sincronizadas, con su SKU, su precio y si están exportadas. Es la pantalla para verificar de un vistazo que el emparejamiento por SKU quedó completo.

15.3 Atributos y variantes

Si el producto tiene opciones en Shopify (talla, color), el conector crea en Odoo los atributos y sus valores, y deja que Odoo genere las variantes. Después empareja cada variante de Shopify con la de Odoo comparando la combinación de valores.

Cuando una variante no empareja Si una variante de Shopify no corresponde a ninguna de Odoo, esa variante se salta y queda una línea de registro con el detalle. El producto sí se importa; solo falta esa variante. Suele pasar cuando alguien cambió una opción en Shopify después de la primera importación.
Producto de una sola variante
Figura 31. Un producto sin opciones se sincroniza igual, con una única variante. Shopify la llama internamente «Default Title».

15.4 Catálogos grandes

Para catálogos de miles de productos, marque Usar operación masiva. En lugar de pedir los productos página por página, el conector le encarga a Shopify que prepare el catálogo completo en un archivo y lo descarga de una sola vez. Es notablemente más rápido y no consume el límite de llamadas de la tienda.

16.Exportar productos a Shopify

El camino inverso: el catálogo se arma en Odoo y se publica en la tienda.

16.1 Preparar el producto en Odoo

Antes de exportar, revise que el producto tenga:

  • Referencia interna en cada variante. Es lo que viaja como SKU.
  • Precio de venta.
  • Peso, si va a cobrar envío calculado.
  • Atributos, si es un producto con variantes.
Producto en Odoo
Figura 32. El producto en Odoo, con sus atributos y variantes.
Descripción del producto
Figura 33. La pestaña Descripción guarda el texto enriquecido que se publica en la ficha de la tienda. Se sincroniza en ambos sentidos.

16.2 Exportar

  1. Abra el asistente y elija Exportar productos.
  2. Deje el selector de productos vacío para exportar todos los pendientes, o elija los que quiera.
  3. Pulse Ejecutar.

Al terminar, la ficha de Shopify guarda el identificador del producto creado, su handle y los identificadores de cada variante. A partir de ahí, Actualizar productos modifica el producto existente en lugar de crear uno nuevo.

Producto exportado visto en Shopify
Figura 34. El producto ya en Shopify, con sus dos variantes, su descripción y sus SKU, tal como los exportó Odoo.
Multimedia del producto
Figura 35. Pestaña Multimedia: las imágenes enlazadas con su identificador en Shopify. Desde aquí se comprueba qué imágenes ya viajaron.
Exportar imágenes Las imágenes van por separado, con el botón Exportar imágenes de la ficha del producto. Se separó a propósito: las imágenes son lo más pesado de la sincronización y rara vez cambian.

17.Publicar y despublicar

Un producto puede existir en Shopify sin estar a la venta. Publicarlo es lo que lo hace visible en la tienda en línea y en el punto de venta.

Desde la ficha del producto de Shopify, los botones Publicar y Despublicar actúan sobre todos los canales de venta de la tienda. También se puede hacer en lote desde el asistente, seleccionando varios productos.

EstadoQué significa
PublicadoVisible y comprable en los canales.
No publicado Existe en Shopify pero no aparece en la tienda. Útil para preparar lanzamientos.
Borrador Estado del producto en Shopify, distinto de la publicación. Un borrador no se vende aunque esté publicado.

18.Inventario

Odoo manda. La existencia que ve el comprador en la tienda sale del almacén.

18.1 Exportar existencias

Elija Exportar existencias en el asistente. El conector calcula, para cada variante y cada ubicación, la cantidad que corresponde según el campo de existencias configurado y los almacenes asociados a esa ubicación, y arma una cola.

Cola de exportación de existencias
Figura 36. Cola de exportación de existencias. Cada línea es una variante en una ubicación, con la cantidad que se va a publicar.
Cómo evita pisar cambios ajenos Shopify exige declarar qué cantidad cree usted que hay antes de fijar la nueva. El conector lee el valor actual, lo compara y solo entonces escribe. Si alguien lo cambió en Shopify entre medias, Shopify rechaza la escritura, el conector vuelve a leer y reintenta. Así dos sistemas no se sobrescriben a ciegas.

18.2 Cantidades fijas y porcentajes

En cada variante de Shopify puede fijar un tipo de existencia fija:

TipoEfecto
Cantidad fija Publica como máximo esa cantidad, aunque en bodega haya más. Sirve para reservar inventario a otros canales.
Porcentaje Publica ese porcentaje de la existencia real. Con 70, de 100 unidades publica 70.

18.3 Importar existencias

Importar existencias trae a Odoo lo que hay en Shopify y hace un ajuste de inventario. Es para el arranque, cuando la tienda ya operaba y Odoo empieza en cero. No la programe: si la ejecuta periódicamente, pisará los movimientos de bodega.

19.Clientes

Los clientes llegan de dos formas: importados en lote o creados al vuelo cuando entra su primer pedido.

Cliente en el administrador de Shopify
Figura 37. Ficha del cliente en Shopify, con su dirección y su historial.
Pestaña Shopify del contacto en Odoo
Figura 38. El mismo cliente en Odoo. La pestaña Shopify muestra el enlace con la tienda; solo aparece en contactos que vienen de Shopify.
Clientes en el administrador de Shopify
Figura 39. Los clientes en Shopify. El conector los trae con sus direcciones y los enlaza con los contactos de Odoo.

19.1 Cómo evita duplicados

Antes de crear un contacto, el conector busca en este orden:

  1. Un contacto ya enlazado con ese cliente de Shopify.
  2. Un contacto con el mismo correo electrónico.
  3. Un contacto con el mismo teléfono.

Solo si no encuentra nada crea uno nuevo. Las direcciones adicionales se agregan como contactos hijos de tipo dirección de entrega, comparando calle, ciudad, código postal y país para no repetir la misma dirección dos veces.

20.Pedidos

El corazón del conector. Un pedido de Shopify se convierte en un pedido de venta de Odoo con todas sus líneas, impuestos, descuentos y envío.

Pedido en el administrador de Shopify
Figura 40. El pedido en Shopify: dos artículos, envío y el total cobrado.
Pedido de venta en Odoo
Figura 41. El mismo pedido ya en Odoo, confirmado y con su factura. El total coincide al centavo con el de Shopify.
Pedidos en el administrador de Shopify
Figura 42. Los pedidos tal como se ven en Shopify, con su estado de pago y de preparación.

20.1 Qué se trae de cada pedido

Dato de ShopifyDónde queda en Odoo
Cliente y direcciones Contacto, dirección de facturación y dirección de entrega.
Artículos y cantidades Líneas del pedido. Se usa la cantidad vigente, ya descontado lo reembolsado.
Descuentos por línea Como porcentaje de descuento en la línea, no como línea aparte.
Impuestos Se buscan o se crean en Odoo según la configuración de impuestos.
Envío Línea con el producto de envío configurado.
Propinas y aranceles Líneas con sus productos especiales.
Origen de la venta Origen, medio y campaña, tomados de los parámetros UTM.
Transacciones y riesgo Pestaña Shopify del pedido.
Pestaña Shopify del pedido
Figura 43. Pestaña Shopify del pedido: estado financiero, pasarela, flujo aplicado, transacciones cobradas y evaluación de riesgo de Shopify.
Pedidos de Shopify en Odoo
Figura 44. Los mismos pedidos ya importados, en Shopify → Operaciones → Pedidos. El prefijo SH permite distinguirlos del resto de ventas.

20.2 La factura

Si el flujo lo indica, la factura se crea y se valida sola, en la moneda del pedido.

Factura generada desde el pedido
Figura 45. Factura generada automáticamente por el flujo de trabajo.

20.3 Reimportar es seguro

No se duplican pedidos Cada pedido queda marcado con su identificador de Shopify y hay una restricción que impide importarlo dos veces en la misma instancia. Si vuelve a importar un pedido que ya existe, el conector solo actualiza su estado financiero y de preparación. Puede reimportar sin miedo.

21.Entregas y fulfillment

Cuando se despacha en Odoo, Shopify se entera: el pedido pasa a preparado y el cliente recibe su número de guía.

21.1 El flujo

  1. Prepare la entrega en Odoo como cualquier otra.
  2. Escriba el número de guía y elija el transportista.
  3. Valide la entrega.
  4. Ejecute Actualizar el estado de envío, o deje que lo haga la acción planificada.
Entrega con datos de Shopify
Figura 46. Entrega validada. Los campos de Shopify muestran el identificador del fulfillment creado y confirman que el estado ya se envió.

21.2 El transportista

Para que el número de guía sea útil, el transportista de Odoo debe llevar su código de transportista en Shopify. Ese código es el que Shopify usa para armar el enlace de rastreo que ve el cliente.

Métodos de envío con códigos de Shopify
Figura 47. Métodos de envío. El código de envío de Shopify sirve además para reconocer, al importar, qué método corresponde a la línea de envío del pedido.

21.3 Entregas parciales

Si despacha en varias entregas, cada una genera su propio fulfillment con sus artículos y su guía. Shopify irá mostrando el pedido como parcialmente preparado hasta que se complete.

22.Reembolsos y cancelaciones

Se hacen en Shopify, que es donde está el dinero, y Odoo los refleja en la contabilidad y en el inventario.

22.1 Reembolso parcial

Al reembolsar en Shopify y traerlo a Odoo, el conector:

  1. Crea una nota de crédito a partir de la factura original.
  2. Deja en ella solo las líneas y cantidades reembolsadas, no la factura completa.
  3. Agrega, si la hay, una línea de ajuste por las diferencias que Shopify sumó al reembolso.
  4. La valida y, si está configurado, la marca como pagada.
  5. Si el reembolso reingresa mercancía, crea la devolución de stock por esas unidades.
Devuelve lo que corresponde, no el pedido entero Las cantidades de la devolución salen del detalle del reembolso de Shopify. Si de un pedido de tres camisetas se reembolsa una, la devolución de stock es de una camiseta.

22.2 Cancelación

Al cancelar un pedido en Shopify e importar la cancelación, el conector distingue dos casos:

SituaciónQué hace Odoo
Sin factura validada Cancela las entregas pendientes, cancela la factura en borrador y cancela el pedido.
Con factura validada Cancela las entregas pendientes y emite una nota de crédito. El pedido queda confirmado, porque contablemente una factura publicada no se borra: se reversa.

23.Payouts y conciliación

Shopify no le deposita lo que vendió: le deposita lo que vendió menos sus comisiones. Aquí es donde eso cuadra.

23.1 Qué es un payout

Cada transferencia de Shopify Payments a su banco es un payout, y viene con su desglose: cargos brutos, comisiones, reembolsos y ajustes. El conector descarga cada payout con todas sus transacciones y las enlaza con los pedidos de Odoo cuando puede identificarlos.

Reportes de payout
Figura 48. Reportes de payout importados, con su fecha, estado e importe neto.

23.2 De payout a extracto bancario

  1. Ejecute Importar reportes de payout.
  2. Abra el payout y revise sus transacciones.
  3. Pulse Generar extracto bancario.
  4. Concilie el extracto en Odoo como cualquier otro.

El extracto se crea en el diario de payouts configurado, con una línea por transacción y el importe neto de cada una. Al conciliar, los cobros cierran las facturas de los pedidos y las comisiones van a la cuenta de gastos que usted indique.

Requiere dos permisos Si al importar payouts obtiene un error de acceso denegado, revise el capítulo 5: hacen falta read_shopify_payments_accounts y read_shopify_payments_payouts, los dos.

24.Webhooks: sincronización en tiempo real

Con webhooks, un pedido aparece en Odoo segundos después de que el cliente pagó, sin esperar a la siguiente acción planificada.

24.1 Qué hace falta

Un webhook es un aviso que Shopify envía a su Odoo cuando algo pasa. Para que llegue, su Odoo tiene que ser alcanzable desde internet. Antes de activarlos, configure el parámetro del sistema web.base.url con la dirección pública de su Odoo.

No funciona en un Odoo local Si su Odoo corre en localhost o en una red interna sin salida, Shopify no puede alcanzarlo y el conector rechazará crear los webhooks con un mensaje explícito. En ese caso use las acciones planificadas del capítulo 27.

24.2 Activarlos

En la pestaña Webhooks de la instancia hay tres interruptores. Al activar cualquiera, el conector registra en Shopify los avisos de ese grupo:

Pestaña de webhooks de la instancia
Figura 49. Pestaña Webhooks. Debajo de los interruptores se listan los avisos registrados con su dirección de retorno y su estado.
GrupoAvisos que registra
Webhooks de productosCreado, actualizado y eliminado.
Webhooks de clientesCreado y actualizado.
Webhooks de pedidos Creado, actualizado, cancelado, preparado, parcialmente preparado y reembolso creado.
Lista de webhooks registrados
Figura 50. Los once avisos registrados y activos, cada uno con la dirección a la que Shopify enviará la notificación.

24.3 Cómo se protege

La dirección del webhook es pública, así que el conector verifica cada aviso antes de hacerle caso:

  • Comprueba la firma HMAC con el secreto de la app. Si no coincide, responde 401 y descarta el aviso.
  • Comprueba que el dominio de la tienda del encabezado coincida con el de la instancia. Si no, responde 404.
Por qué da igual la versión de webhooks que elija El conector no interpreta el contenido del aviso: solo lee el identificador del registro y vuelve a consultarlo por la API. Así hay un único punto donde se leen los datos, y los cambios de formato de Shopify no rompen nada.

24.4 Qué pasa cuando llega un aviso

SituaciónReacción
Pedido nuevoSe crea una cola con ese pedido y se procesa enseguida.
Pedido que ya existe en OdooSe actualizan sus estados, sin duplicarlo.
Pedido canceladoSe aplica el proceso de cancelación del capítulo 22.
Reembolso creadoSe genera la nota de crédito.
Producto o clienteEntra en su cola correspondiente.

Si por un mismo registro llegan dos avisos seguidos (Shopify manda «creado» y «actualizado» casi a la vez), el conector reutiliza la cola pendiente en lugar de crear otra. Así no se llena de colas repetidas.

25.Las colas de importación

Todo lo que baja de Shopify pasa por aquí. Saber leer una cola es saber resolver el 90 % de los problemas.

Lista de colas de pedidos
Figura 51. Colas de pedidos. Los contadores dicen cuántos registros trae la cola y cómo terminó cada uno.

25.1 Los estados

EstadoSignificado
BorradorDescargada, todavía sin procesar.
CompletadaTodas las líneas se procesaron bien.
Parcialmente completada Unas entraron y otras fallaron. Revise las fallidas.
FallidaNinguna línea se pudo procesar.
Detalle de una cola de pedidos
Figura 52. Detalle de una cola. Abajo, cada línea con su estado y el pedido de Odoo que generó.
Colas de productos
Figura 53. Colas de productos. Las de clientes y las de exportación de existencias se leen igual: mismos estados, mismos contadores y mismos botones.

25.2 Qué hacer con una cola fallida

  1. Ábrala y pulse Registros para ver el motivo exacto de cada fallo.
  2. Corrija la causa en Odoo: cree el producto que faltaba, arregle el SKU, abra el período contable.
  3. Pulse Reintentar las líneas fallidas.
  4. Pulse Procesar la cola.

Si algunas líneas no se van a poder procesar nunca, Cancelar las líneas pendientes las marca como canceladas para que la cola deje de aparecer como pendiente.

Tres intentos y avisa Una cola se reintenta automáticamente hasta tres veces. Al tercer fallo se marca como que requiere atención y, si configuró las notificaciones del capítulo 13, abre una actividad a los responsables.

26.Registros y libros de registro

Aquí está siempre la respuesta a «¿por qué no se importó esto?».

Líneas de registro
Figura 54. Shopify → Registros → Registros. Cada línea dice qué operación falló, sobre qué registro y por qué.
ColumnaPara qué sirve
TipoError, advertencia o información.
Referencia del pedidoBuscar por el número de pedido del reclamo.
Referencia internaEl SKU implicado, cuando el problema es de producto.
ID de ShopifyIdentificador del registro en la tienda.
Discrepancia Marca los casos en que un dato de Shopify no encontró su par en Odoo. Filtre por aquí para ver de golpe todo lo que falta emparejar.
Libros de registro
Figura 55. Los libros de registro agrupan las líneas por operación. Sirven para ver qué pasó en una ejecución concreta.

27.Acciones planificadas

Para que la sincronización ocurra sola.

Acciones planificadas
Figura 56. Acciones planificadas del conector, en Ajustes → Técnico → Acciones planificadas.
AcciónDe fábricaRecomendación
Procesar la cola de pedidosActiva Déjela activa. Cada 10 minutos.
Procesar la cola de productosActivaIgual.
Procesar la cola de clientesActivaIgual.
Procesar la cola de exportación de existenciasActivaIgual.
Importar pedidosInactiva Actívela cada 15–30 minutos si no usa webhooks.
Importar productosInactiva Solo si Shopify manda el catálogo. Una vez al día basta.
Importar clientesInactiva Rara vez necesaria: los clientes entran con sus pedidos.
Exportar existenciasInactiva Actívela cada hora. Es la que evita vender lo que no hay.
Actualizar el estado de envíoInactiva Actívela cada hora si despacha durante todo el día.
Importar pedidos canceladosInactiva Una vez al día, si no usa webhooks.
Importar reportes de payoutInactiva Una vez al día, si concilia Shopify Payments.
Generar extractos de payoutInactiva Actívela solo si quiere el extracto sin intervención.
Las de importación vienen apagadas a propósito Así, al instalar, nada empieza a sincronizar antes de que usted termine de configurar. Actívelas cuando la configuración esté probada.

28.Impuestos y monedas

Dos temas donde un descuido se convierte en contabilidad mal registrada.

28.1 Impuestos

TratamientoCómo funciona
Crear el impuesto desde Shopify Por cada impuesto que trae el pedido, busca en Odoo uno del mismo porcentaje y tipo; si no existe, lo crea. Garantiza que el total de Odoo coincida con el de Shopify.
Impuesto por defecto de Odoo Ignora los impuestos de Shopify y aplica los del producto y la posición fiscal. Elíjalo si su fiscalidad la manda Odoo.
Impuesto incluido o no El conector respeta lo que diga el pedido: si la tienda vende con impuesto incluido en el precio, el impuesto que crea en Odoo también será incluido. Así los totales cuadran sin ajustes manuales.

28.2 Monedas

Un pedido se registra en la moneda en que se vendió. Si esa moneda no es la de la lista de precios de la instancia, el conector busca una lista de precios en esa moneda y, si no existe, la crea. También activa la moneda en Odoo si estaba desactivada.

Por qué importa Sin esto, un pedido cobrado en quetzales entraría en Odoo con la moneda de la compañía y los importes quedarían con la etiqueta equivocada: el total se vería igual, pero la contabilidad y los reportes estarían mal. Es un error silencioso, de los peores.

29.Usuarios y permisos

Dos perfiles: quien opera y quien configura.

GrupoPuedeNo puede
Usuario Ver instancias, productos, pedidos y colas; ejecutar importaciones y exportaciones; procesar colas; revisar registros. Ver ni cambiar las credenciales, ni tocar flujos, webhooks o ubicaciones.
Administrador Todo lo anterior más la configuración completa.
Usuarios de Odoo
Figura 57. Los permisos se asignan en la ficha del usuario, en la sección Shopify.
Las credenciales están protegidas El Client ID y el Client Secret solo son visibles para el grupo administrador. Un usuario operativo puede trabajar con la instancia sin llegar a ver nunca las llaves de la tienda.

Si maneja varias compañías, cada instancia pertenece a una y las reglas de registro impiden que los usuarios de una compañía vean los datos de otra.

30.Problemas frecuentes

Ordenados por lo que se ve en pantalla.

30.1 Al conectar

SíntomaCausa y solución
«Shopify rechazó las credenciales» Client ID o Secret mal copiados, o la app no está instalada en esa tienda. Revise el capítulo 4 y confirme que instaló la app en la tienda correcta.
«El dominio de tienda no es válido» Escribió el dominio comercial en lugar del myshopify.com.
Aviso de permisos faltantes Agréguelos en el Dev Dashboard, cree una versión nueva y reinstale la app.
«Contains invalid scopes: read_shopify_payments» Ese permiso ya no existe. Use read_shopify_payments_accounts.

30.2 Al importar productos o pedidos

SíntomaCausa y solución
«Ningún producto de Odoo corresponde a…» El SKU no existe en Odoo o no coincide. Cree el producto con esa referencia interna, o active Crear productos automáticamente.
«Ninguna variante de Odoo corresponde a…» Las opciones de la variante cambiaron en Shopify. Revise los atributos del producto en Odoo.
El pedido no aparece y no hay error Casi siempre es la fecha de Importar pedidos posteriores a, o que el pedido está cancelado y esos entran por su propia operación. Pruebe importándolo por su número.
El pedido entró en borrador No hay flujo configurado para esa combinación de pasarela y estado financiero. Capítulo 11.
El total de Odoo no cuadra con el de Shopify Falta el producto de envío, o el tratamiento de impuestos está en «Impuesto por defecto de Odoo» y los impuestos no coinciden.

30.3 Al exportar

SíntomaCausa y solución
El inventario no cambia en Shopify La ubicación no está mapeada a un almacén, o la variante no tiene activado el control de inventario en Shopify.
«No hay existencias que exportar» Ninguna variante cumple las condiciones: exportada, con control de inventario y con artículo de inventario. Exporte primero el producto.
La guía no llega a Shopify La entrega no está validada, o el pedido ya figuraba como preparado en Shopify.

30.4 Webhooks

SíntomaCausa y solución
No se pueden crear Falta el parámetro web.base.url o apunta a una dirección no pública.
Se registran pero no llega nada Su Odoo no es alcanzable desde internet, o un cortafuegos bloquea a Shopify.
Aparecen como inactivos Shopify los da de baja tras muchos intentos fallidos de entrega. Vuelva a activarlos con el interruptor de la instancia.

31.Anexos

31.1 Modelos que crea el conector

MenúPara qué
Configuración → InstanciasLa tienda conectada y toda su configuración.
Configuración → UbicacionesUbicaciones de Shopify y su almacén.
Configuración → Flujos de trabajoRecetas de automatización de pedidos.
Configuración → Pasarelas de pagoFormas de pago detectadas.
Configuración → WebhooksAvisos registrados en Shopify.
Operaciones → ProductosEnlace entre el producto de Odoo y el de Shopify.
Operaciones → VariantesEnlace a nivel de variante, con SKU e inventario.
Operaciones → PedidosPedidos de venta que vienen de la tienda.
Operaciones → Reportes de payoutLiquidaciones de Shopify Payments.
ColasLas cuatro colas de importación y exportación.
RegistrosLíneas y libros de registro.

31.2 Límites de Shopify que conviene conocer

LímiteCómo lo maneja el conector
Llamadas por segundo Mide el saldo disponible que le reporta Shopify y se autorregula. Si aun así lo frenan, espera y reintenta.
Costo máximo por consulta Los pedidos se piden de cinco en cinco. Si una tienda tiene pedidos muy grandes, el conector reduce el tamaño de página automáticamente.
Pedidos de más de 60 días Requieren el permiso read_all_orders.
Catálogos grandes La opción Usar operación masiva los descarga en bloque, sin consumir el límite.
Vigencia del token 24 horas. Se renueva solo.

31.3 Glosario

TérminoSignificado
InstanciaUna tienda de Shopify conectada a Odoo.
ScopePermiso que la tienda concede a la app.
HandleIdentificador del producto en la URL de la tienda.
Fulfillment El registro de Shopify que dice que un pedido, o parte de él, ya se despachó.
PayoutTransferencia de Shopify Payments a su banco.
ColaLote de registros descargados, pendiente de procesar.
WebhookAviso que Shopify envía a Odoo cuando algo cambia.
Estado financiero Cómo va el cobro del pedido: pendiente, pagado, reembolsado…

31.4 Lista de verificación de puesta en marcha

  1. App creada en el Dev Dashboard con todos los permisos.
  2. App instalada en la tienda; Client ID y Secret copiados.
  3. Instancia creada en Odoo y Probar conexión en verde, sin permisos faltantes.
  4. Ubicaciones importadas y mapeadas a almacenes.
  5. Productos especiales revisados, sobre todo el de envío.
  6. Emparejamiento por SKU verificado: todas las variantes de Shopify tienen SKU.
  7. Flujos de trabajo configurados por pasarela y estado financiero.
  8. Importación de prueba de productos y clientes, con las colas en verde.
  9. Un pedido de prueba importado, facturado y entregado de punta a punta.
  10. Existencias exportadas y verificadas en Shopify.
  11. Acciones planificadas activadas, o webhooks registrados.
  12. Responsables de notificaciones asignados.
Logotipo de mrdc.tech
mrdc.tech
Guatemalan based, for all the world

Manual del Conector Shopify para Odoo 19.
Implementación, soporte y desarrollo a la medida sobre Odoo: comercio electrónico, facturación electrónica de Guatemala, El Salvador y Panamá, pasarelas de pago, aplicaciones móviles e integraciones con inteligencia artificial.

mrdc.tech · info@mrdc.tech · +502 4288 7385