Help › Connections

Shopify connection

For admins

Connect your Shopify store so orders can be loaded, fulfilled, tagged and marked paid.

Settings › Shopify.

One-time setup (about 5 minutes)

  1. Go to dev.shopify.com › Apps › Create app and name it "Order Tracker".
  2. Scopes: read_orders, write_orders. To book parcels and add shipment events also add read_merchant_managed_fulfillment_orders, write_merchant_managed_fulfillment_orders, read_third_party_fulfillment_orders, write_third_party_fulfillment_orders. Add read_locations if you want Settings › Warehouses to copy your Shopify locations (optional). Add read_all_orders only if Shopify approves it (without it, orders older than 60 days cannot be found).
  3. Release the version and install the app on your store.
  4. Copy the Client ID and Client secret into the tracker with your .myshopify.com address (see below if you are not sure what that is). Press Save, then Test connection - it lists the permissions it found and any that are missing.
NoteNever paste the Client secret into chats or emails. Enter it only on this page; it is stored encrypted.

What is my store name?

It is the short name Shopify gave your store when you opened it, not the name of your website. You can find it in two places:

  • In the address bar while you are in your Shopify admin: admin.shopify.com/store/my-store/orders. The part after /store/ is the name.
  • In Shopify under Settings › Domains: the address that ends in .myshopify.com. Do not use the other line, the one that is your own website.
Finding the store name. The example store is made up.

In the tracker you can type just the name (my-store), the full my-store.myshopify.com, or paste the address from your browser. It tidies the rest. Your own website (like www.my-store.example) will not work here, because Shopify's connection only answers on the .myshopify.com address.

Mode

  • Off - nothing is sent.
  • Practice - looks up orders and logs what would change. Use it for a day first.
  • Live - really changes orders.

What is sent

Choose which statuses add a tag (one tracker tag at a time; your own tags are never touched), whether a delivered cash-on-delivery order is marked paid, which shipment events appear on the customer's tracking page, and which sources may send changes. Big imports of old history are off by default so your store is not flooded.

Advanced › Try one order previews exactly what would happen. Advanced › Queue & log shows every change, with Retry for failed ones. Anything left over is sent by itself within a few minutes.

Orders, live

Open the Shopify channel (Settings › Sales channels › Shopify) and its Live orders tab. Live orders on makes Shopify send every new and changed order to the tracker the moment it happens, so the Orders page stays current without waiting. Check shows whether it is on. The shop's Advanced tab holds the Client secret: it is a box you can type into, used to confirm that messages really come from your shop (stored encrypted; never paste it anywhere else).

Big shops: the first import

The first time, the Orders page reads your last 30 days in small steps. A bar shows how far it is and how many orders are in; you can keep working, the list fills in as it goes, and it carries on in the background when you leave. If Shopify says a step is too heavy the steps get smaller by themselves. Nothing is marked as complete before the last order is read, and picking "Last 90 days" or "All time" on the Orders page brings older orders in the same careful way.

For the Orders page the connection needs read_orders and write_orders (the second marks payments in Shopify); add read_all_orders to see orders older than 60 days. If Test connection lists a missing permission, add it in your Shopify app, release a new version and install it again.