Octibiz
Demo

Durchsucht Website und Dokumentation gemeinsam. Enter zeigt alle Treffer, Esc schließt.

Shopify

Purpose

Shopify becomes a sales channel, not a second system: the item master stays here, the shop gets a copy. That removes the most expensive source of error in e-commerce before it exists — two item masters, two stock figures, two price truths and a drifting connector in between. Shopify is the reference connector: the channel contract was shaped on it.

Scope

  • Create and update items in ONE call (productSet) instead of three steps — so there is only

one partial failure instead of three.

  • Stock at the configured location; without it Shopify does not know where the goods are and

refuses.

  • Prices on the variant — since 2024 Shopify keeps price and SKU there, not on the product.
  • Orders are pulled and become sales orders.
  • Fulfilment with tracking number reported back to the shop.
  • Carts by webhook (checkouts/create, checkouts/update): started carts become

carts in the channel. One that rests for an hour with an address and without an order counts as abandoned — the trigger of the abandoned-cart reminder. Template in the integration hub: Shopify: carts via webhook.

  • Four settings per channel: shop domain, API version, location and whether new items appear as

ACTIVE or DRAFT.

Interplay

The channel is a sales channel in the sense of Channels — not a special path beside the document. Items, prices and stock come from the product catalogue and stock; incoming orders become regular sales orders and travel through warehouse, shipping and invoicing like any other order. Credentials live as an integration under Integrations in the encrypted store. Flows and mappings at the system boundary — which field goes where, when a sync runs — belong to OctiConnect; conditions and waiting times remain the business of automations.

Setting up carts

  1. In the integration hub install the template Shopify: carts via webhook (enter the channel key of

the Shopify channel) and take over the webhook address and the secret shown.

  1. In the Shopify app (Dev Dashboard or custom app in the Shopify admin) grant the access

read_orders — without it Shopify delivers no carts. Shopify then asks for access to protected customer data: request email, name and phone and state the purpose ("reminder of abandoned carts").

  1. In Shopify set two webhooks to the address from step 1: checkouts/create and

checkouts/update, format JSON. They are signed with the app secret (X-Shopify-Hmac-Sha256) — the same secret belongs on the flow.

  1. Switch off Shopify's own abandoned-checkout email (Marketing → Automations), otherwise two systems

send reminders.

Carts reported twice update the same cart; an order from the same address or the completion at checkout ends the reminder.

Limits

  • The external id carries three ids (product, variant, inventory item), separated by :.

Shopify needs a different one per operation; looking them up by SKU on every run would mean an extra request per line and run.

  • The real run is still outstanding. What is verified is that we ask correctly and read the

answer correctly — not that Shopify accepts the request. A real seller account is missing.

channelshopify.overview · Available from version 0.5.0