Shopify

Sync Data

Erfahren Sie, wie Sie Daten aus Ihrem Shopify-Shop synchronisieren und anpassen können

Synchronisieren Sie Ihre Shopify-Produkte, Metafelder und Abonnenten mit Clerk.io. Dieser Leitfaden beschreibt das Erstellen einer App im Dev Dashboard von Shopify, die Anpassung von Produktdaten und die Synchronisierung von Abonnenteninformationen.

Sync einrichten #

Die Einrichtung besteht aus zwei Teilen: Erstellen und Installieren einer App in Shopify und anschließendes Eingeben der Zugangsdaten in my.clerk.io. Führen Sie beide Schritte aus, bevor Sie die erste Synchronisierung starten.

Bevor Sie die Synchronisierung einrichten, stellen Sie sicher, dass Sie die aktuelle .myshopify.com-Domain des Shops besitzen. Folgen Sie den Shopify-Domain-Anweisungen, falls erforderlich.

In Shopify #

Führen Sie diese Schritte im Dev Dashboard von Shopify aus. Falls sich die Bezeichnungen ändern, finden Sie Hilfe im aktuellen Dev Dashboard App Guide von Shopify.

App erstellen #

  1. Öffnen Sie das Shopify Dev Dashboard und melden Sie sich an.
  2. Öffnen Sie in der linken Navigation Apps und klicken Sie auf Create app.
  3. Wählen Sie Start from Dev Dashboard, geben Sie Clerk.io als App-Namen ein und klicken Sie auf Create.

App konfigurieren #

  1. Öffnen Sie den Tab Versions für die neue App.
  2. Geben Sie unter App URL https://shopify.dev/apps/default-app-home ein. Die App bietet nur API-Zugriff und benötigt keine eingebettete Admin-Oberfläche.
  3. Wählen Sie unter Webhooks API Version die neueste verfügbare Version.
  4. Fügen Sie die Zugriffsbereiche (Scopes) aus dem nächsten Abschnitt hinzu.

Scopes konfigurieren #

Beginnen Sie mit den untenstehenden Scopes. Sie erlauben Clerk.io, den Katalog, Bestellungen, Kunden, Seiten, Märkte, Standorte und verwandte Daten für die Shopify-Integration zu importieren. Fügen Sie die folgende Liste ins Zugriffsbereichs-Feld ein:

Lassen Sie read_all_orders beim Erstellen der ersten Version weg, um einen “invalid scopes”-Fehler zu vermeiden. Sie fügen ihn in einer zweiten Version vor der Installation der App hinzu.

read_customers,write_customers,read_inventory,read_locales,read_locations,read_markets,read_markets_home,read_metaobjects,read_online_store_pages,read_orders,read_products,read_publications,read_content,read_translations
Warum benötigen wir Schreibrechte? Clerk.io liest nur Daten, aber Shopify verlangt den Scope write_customers zum Zugriff auf Marketing-URL-Felder des Kunden wie customer.unsub_url.

Sie können die Scopes auch einzeln auswählen:

  • Customers (read_ und write_)
  • Inventory (read_)
  • Locales (read_)
  • Locations (read_)
  • Markets (read_)
  • Markets Home (read_)
  • Metaobjects (read_)
  • Online Store Pages (read_)
  • Orders (read_)
  • Products (read_)
  • Publications (read_)
  • Store Content (read_)
  • Translations (read_)

Klicken Sie auf Release, um die erste Version mit diesen Scopes zu veröffentlichen. Fügen Sie dann unten die Berechtigung für alle Bestellungen hinzu.

Alle Bestellungen hinzufügen #

Fügen Sie read_all_orders in einer zweiten Version hinzu, damit Clerk.io die vollständige Bestellhistorie des Shops importieren kann.

  1. Öffnen Sie im Dev Dashboard den Tab Versions der App und klicken Sie auf Create Version.
  2. Behalten Sie die bestehenden Scopes und hängen Sie ,read_all_orders ans Ende des Feldes für die Zugriffsbereiche an.
  3. Speichern Sie die Konfiguration als neue Version.
  4. Klicken Sie unten auf Release.
  5. Geben Sie bei Aufforderung optional eine Versionsbeschreibung wie Read all orders was added ein und schließen Sie die Freigabe ab.

Die vollständige Scopeliste für diese zweite Version ist:

read_customers,write_customers,read_inventory,read_locales,read_locations,read_markets,read_markets_home,read_metaobjects,read_online_store_pages,read_orders,read_products,read_publications,read_content,read_translations,read_all_orders

App installieren #

Installieren Sie die veröffentlichte App in dem Shopify-Store, der mit Clerk.io synchronisiert werden soll.

  1. Öffnen Sie in der App Home und klicken Sie auf Install app.
  2. Wählen oder erstellen Sie den Shopify-Store.
  3. Prüfen Sie die angeforderten Zugriffsrechte und klicken Sie auf Install.

In Clerk.io #

Führen Sie diese Schritte in my.clerk.io mit den Zugangsdaten aus Shopify aus. Das Team des Shops kann dies direkt erledigen oder die Zugangsdaten sicher mit einer dritten Partei teilen, die die Clerk.io-Synchronisation einrichtet.

Sync konfigurieren #

  1. Öffnen Sie im Shopify Dev Dashboard die Settings der Clerk.io-App und kopieren Sie die Client ID und Client Secret, oder erhalten Sie diese über eine genehmigte sichere Übergabe vom Team des Shopify-Shops.
  2. Öffnen Sie in my.clerk.io den entsprechenden Store und gehen Sie zu Data > Configuration.
  3. Setzen Sie Sync Method auf Shopify.
  4. Tragen Sie die aktuelle .myshopify.com-Domain des Shopify-Stores in Shopify Domain ein. Geben Sie nicht die öffentliche benutzerdefinierte Domain, kein https:// oder einen Pfad ein.
  5. Fügen Sie die Client ID und Client Secret in die entsprechenden Felder ein.
  6. Klicken Sie auf Save und anschließend auf Start Sync.

Halten Sie das Client Secret privat. Teilen Sie es nur über einen genehmigten sicheren Kanal und fügen Sie es niemals in ein öffentliches Dokument, Support-Ticket oder Chat ein.

Bekanntes Problem: Shopify kann beim ersten Sync möglicherweise kein Token erstellen, was zu einem Authentifizierungsfehler führt. Dies ist ein bekanntes, gelegentlich auftretendes Problem von Shopify. Warten Sie einfach 1–2 Minuten und versuchen Sie dann erneut zu synchronisieren.

Märkte und Inventar #

Wenn Sie mehrere Shopify-Märkte, -Locales oder Inventurstandorte betreiben, überprüfen Sie vor dem Synchronisieren folgende Felder:

  • Shopify Market
  • Shopify Locale
  • Prefix URLs with Locale
  • Force Relative URLs
  • Inventurstandorte

Diese Werte sollten Ihrer Shopify-Markt-/Domain-Konfiguration entsprechen. Für ein vollständiges Feldmapping siehe Shopify-Integrationseinstellungen.

Variantendaten #

Shopify-Variantendaten können sich abhängig von der Einstellung Nur Lagervarianten importieren unterschiedlich verhalten.

Typische Shopify-Variantenattribute in Clerk.io sind:

  • variant_inventory_policy (String-Liste)
  • variant_inventory_tracking (Boolean-Liste)
  • variant_list_prices (Nummern-Liste)
  • variant_names (String-Liste)
  • variant_option_size (String-Liste)
  • variant_prices (Nummern-Liste)
  • variant_stocks (Nummern-Liste)
  • variant_weight (Nummern-Liste)
  • variant_weight_unit (String-Liste)
  • variants (String-Liste, Varianten-IDs)

Beispiel:

{
  "variant_inventory_policy": ["deny", "deny"],
  "variant_inventory_tracking": [true, true],
  "variant_list_prices": [240, 240],
  "variant_names": ["Xs", "M"],
  "variant_option_size": ["Xs", "M"],
  "variant_prices": [120, 120],
  "variant_stocks": [1, 7],
  "variant_weight": [0.4, 0.4],
  "variant_weight_unit": ["KILOGRAMS", "KILOGRAMS"],
  "variants": ["55970989179259", "55970989244795"]
}

Wenn Nur Lagervarianten importieren aktiviert ist, umfassen diese Listen nur Varianten, die auf Lager sind.

Produktdaten anpassen #

In Shopify können Metafelder und andere von Ihnen erstellte Attribute über my.clerk.io > System status > Data sync synchronisiert werden.

Gehen Sie einfach zum Eingabefeld Custom Attributes und geben Sie die Produktattribute ein, die Sie einschließen möchten.

Um mehrere Attribute hinzuzufügen, trennen Sie sie mit Kommas.

Attribute sollten immer mittels ihres key geschrieben werden.

Dies ist meist alles kleingeschrieben. Zum Beispiel sollte das Attribut “Sizes” als “sizes” eingetragen werden.

Sie müssen das namespace nicht angeben – Clerk.io findet es automatisch anhand des key.

In Shopify finden Sie die Attributschlüssel unter Settings > Custom data > Products/Variants.

Abonnenten synchronisieren #

Shopify unterstützt das Verwalten von Abonnenten direkt auf der Plattform.

Diese können einfach mit Clerk.io synchronisiert werden.

Wenn aktiviert, importieren wir das Attribut “subscribed: true” für jede Email-Adresse, die in Shopify abonniert ist.

Dies kann dann für Auto-Email verwendet werden.

Gehen Sie dazu einfach in Ihren my.clerk.io-Store, dann Data -> Configuration und setzen Sie Include Subscriber State auf Yes. Klicken Sie anschließend auf Save und starten Sie eine neue Synchronisierung.

Wenn Sie einen Abmeldelink für Kunden verwenden möchten, hat jeder Kunde, der aus einem Shopify-Backend gezogen wird, ein unsub_url-Attribut, das für das Auto-Email-Design im Unsubscribe-Feld genutzt werden kann: {{customer.unsub_url}}

Die Webhooks API-Version muss mindestens auf 2022-04 gesetzt werden, da diese Unterstützung dort hinzugefügt wurde. Sie können dies in der App prüfen, die Sie für Clerk.io im Dev Dashboard unter Settings erstellt haben.

Legacy Custom App #

Ab Januar 2026 gestattet Shopify das Erstellen von Custom Apps direkt im Shopify-Admin für Stores nicht mehr. Bestehende Custom Apps funktionieren weiterhin, aber diese Methode sollte nur verwendet werden, wenn bereits eine Custom App eingerichtet ist. Für alle anderen Setups nutzen Sie bitte die Developer Dashboard Methode oben.

Wenn Sie bereits eine bestehende Custom App haben und diese verwenden oder ändern möchten, wählen Sie Shopify (Legacy Custom App) als Sync Method in my.clerk.io > Data > Configuration aus.

Diese Schritte gelten nur, wenn Ihr Shopify-Store noch Zugriff auf das Erstellen von Custom Apps im Shopify-Admin hat.

  1. Gehen Sie in Shopify zu Settings > Apps > Develop Apps.

  2. Klicken Sie auf Create app, benennen Sie sie “Clerk.io”, wählen Sie den App-Entwickler aus und klicken Sie erneut auf Create app.

  3. Klicken Sie auf Configuration → Admin API integration → Configure.

  4. Unter Admin API access scopes gewähren Sie Lesezugriff (Scopes beginnend mit read_) für die folgenden Bereiche. Stellen Sie bei Customers auf Lesen und schreiben (einschließlich write_customers).

    Warum benötigen wir Schreibrechte? Clerk.io liest nur Daten, aber Shopify verlangt den Scope write_customers, um auf Marketing-URL-Felder des Kunden zuzugreifen (zum Beispiel für das Synchronisieren von customer.unsub_url).

    Sie können die folgende Zeichenfolge direkt ins Eingabefeld kopieren, um alle Scopes auf einmal hinzuzufügen:

    read_all_orders,read_customers,write_customers,read_inventory,read_locales,read_locations,read_markets,read_markets_home,read_metaobjects,read_online_store_pages,read_orders,read_products,read_publications,read_content,read_translations
    

    Oder wählen Sie sie einzeln aus:

    • Customers (read_ und write_)
    • Inventory (read_)
    • Locales (read_)
    • Locations (read_)
    • Markets (read_)
    • Markets Home (read_)
    • Metaobjects (read_)
    • Online Store Pages (read_)
    • Orders (read_)
    • All Orders (read_)
    • Products (read_)
    • Publications (read_)
    • Store Content (read_)
    • Translations (read_)
  5. Klicken Sie auf Save, dann Install App → Install.

  6. Öffnen Sie API Credentials und kopieren Sie Ihre Shopify-Domain sowie den API Key, Access Token und Secret Key der App.

  7. Gehen Sie zu my.clerk.io > Data > Configuration. Wählen Sie unter Sync Method Shopify (Legacy Custom App).

  8. Fügen Sie diese Werte ins Formular ein. Wählen Sie bei Aufforderung eine Standard-Bildgröße und klicken Sie auf Start Sync.

Diese Seite wurde von einer hilfreichen KI übersetzt, daher kann es zu Sprachfehlern kommen. Vielen Dank für Ihr Verständnis.