On és el botó i quan es veu
El botó Refresh from Shopify és a la pantalla Shopify Orders. Per arribar-hi, obre Vendes, després Shopify, després Operations i finalment Orders. La condició de la seva vista diu que es veu sempre, i existeix a Odoo 17, 18, 19 i 20.

El rètol canvia amb l'idioma d'Odoo. Amb Odoo en castellà és Refresh from Shopify; en alemany, Von Shopify aktualisieren; en francès, Actualiser depuis Shopify; en italià, Aggiorna da Shopify; i en portuguès, Atualizar do Shopify.


Primer, el que el connector fa sense que premis res
El camí normal és automàtic. La tasca programada Shopify Process Webhooks (cada minut, activa en instal·lar) arriba fins al processament dels avisos de webhook de Shopify. Quan l'avís és d'una comanda i la casella Webhook Sync Orders està marcada, el mòdul pren l'identificador de la comanda de l'avís mateix i llança la mateixa sincronització de comandes que llança el botó.
Aquesta casella és a la fitxa de Shopify Instances, pestanya Webhooks, i ve marcada per defecte. Just a la mateixa pestanya hi ha Webhook Sync Products, que ve desmarcada per defecte i fa referència a productes, no a comandes.
Per això el botó és l'excepció: serveix per tornar a portar una comanda a mà. A més, el codi del botó no mira la casella Webhook Sync Orders: crida directament la sincronització amb la instància i la comanda que té al davant.
Un cas il·lustratiu: la comanda que no et quadra
Exemple Cas il·lustratiu: l'empresa i les seves dades són inventades per explicar el flux.
Imagina Cerámicas Ribera, una botiga inventada per a aquest exemple que ven a Shopify i du la resta a Odoo. Una persona d'administració obre una comanda a Odoo i dubta que reflecteixi el que Shopify té ara. Així ho recorre:
- Entra a la fitxa de
Shopify Instances, pestanyaWebhooks, i mira siWebhook Sync Ordersestà marcada. Si ho està, els avisos de comanda ja llancen aquesta sincronització pel seu compte; el que ella busca és una segona lectura a mà. - Obre
Vendes,Shopify,OperationsiOrders, i entra a la comanda. Es fixa en el campInstancei en el campShopify Order, perquè són les dues dades amb què treballa el botó. - Prem
Refresh from Shopify. - El mòdul torna a demanar aquesta comanda a Shopify i, si Shopify la retorna, la lliura a un altre pas del mòdul i la compta com a sincronitzada.
- Torna a mirar la comanda a Odoo i la compara amb Shopify.
Què aprendre del cas: primer es mira el camí automàtic i les seves caselles, i després s'usa el botó sobre una comanda concreta, amb la seva instància i el seu identificador de Shopify al davant.
Què fa el botó per dins, en ordre
- Recorre les comandes sobre les quals es llança l'acció.
- De cada comanda pren la seva instància (
Instance) i l'identificador deShopify Order, i els dona a la sincronització de comandes d'aquesta instància. - Aquesta sincronització prepara l'identificador de la comanda per consultar-la; si no n'obté cap, salta aquesta comanda i continua amb la següent.
- Pregunta a Shopify per la comanda.
- Si Shopify no retorna res, salta aquesta comanda i continua.
- Si retorna dades, les lliura a un altre pas del mòdul i suma un al recompte de sincronitzats.
- El botó acaba retornant cert; no fa servir aquest recompte.
Què pot sortir malament i què mirar
En els passos tercer i cinquè el codi passa a la comanda següent sense lliurar res. Si prems el botó i no veus canvis, compara amb Shopify: pot ser que Shopify no retornés res per a aquesta comanda o que no s'obtingués un identificador vàlid.
Per la via automàtica, si la sincronització falla, l'esdeveniment del webhook queda marcat com a fallit amb el text de l'error i entra a la cua de reintents. En superar el topall de reintents passa a exhaurit i deixa de reintentar-se tot sol; llavors el mòdul deixa una nota a la instància amb l'avís Shopify webhook … (event …) failed again after … retries and will not be retried any more: …. Once the cause is fixed, press Retry on the event.
Què costa i com t'ajuda FlexigoTech
El mòdul costa 9 € per versió d'Odoo, per a 17, 18, 19 i 20, pagament únic sense IVA (fitxa d'Odoo Apps), i necessita la subscripció a FlexigoTech Cloud: el pla Conector costa 49 €/mes o 490 €/any sense IVA.
FlexigoTech implanta Odoo 17, 18, 19 i 20 i desenvolupa connectors i integracions a mida. Si vols revisar com arriben les comandes de la teva botiga a Odoo, també hi ajudem.
Continua llegint
Comprovat al codi del connector (versió 20.0) i a les fonts enllaçades
Fonts
- Codi del mòdul: flexigobe_shopify_connector 20.0 (c7078cd8): views/shopify_order_views.xml
- Codi del mòdul: flexigobe_shopify_connector 20.0 (c7078cd8): models/shopify_order.py
- Codi del mòdul: flexigobe_shopify_connector 20.0 (c7078cd8): models/shopify_instance.py
- apps.odoo.com/apps/modules/20.0/flexigobe_shopify_connector
- apps.odoo.com/apps/modules/17.0/flexigobe_shopify_connector
- apps.odoo.com/apps/modules/18.0/flexigobe_shopify_connector
- apps.odoo.com/apps/modules/19.0/flexigobe_shopify_connector
- flexigotech.com/precios.html
- flexigotech.com/en/services.html
