Get Shopify Oauth Token
Zuletzt geändert: 14.03.2026 05:56

Get-ShopifyOAuthToken #

ÜBERSICHT #

Ruft einen Shopify Offline Access Token per OAuth ab (einmalig, interaktiv).

SYNTAX #

Get-ShopifyOAuthToken [-Shop] <string> [-ClientId] <string> [-ClientSecret] <string> [[-Port]
    <int>] [[-Scopes] <string>] [<CommonParameters>]

BESCHREIBUNG #

Startet einen lokalen HTTP-Listener, öffnet den Browser mit der Shopify- Autorisierungs-URL, fängt den Callback ab und tauscht den Authorization Code gegen einen permanenten Offline Access Token.

Der Token ist NICHT an die Maschine gebunden. Er kann auf jedem Rechner, Server oder Scheduled Task verwendet werden. Er läuft nicht ab, solange die App im Shop installiert bleibt.

WICHTIG: Diese Funktion ist interaktiv und erfordert einen Browser. Sie wird einmalig pro Shop ausgeführt, nicht im Batch-Betrieb.

Seit Januar 2026 können keine neuen Admin Custom Apps mehr im Shopify-Admin erstellt werden. Partner Dashboard Apps mit OAuth sind der einzige Weg für neue Installationen.

== EINRICHTUNG IM SHOPIFY PARTNER DASHBOARD ==

  1. https://partners.shopify.com öffnen und einloggen (oder Account anlegen)
  2. “Apps” -> “App erstellen” klicken
  3. App-Name vergeben (z.B. “Eulanda-ERP”)
  4. “Konfiguration” -> neue Version erstellen
  5. App-URL: beliebig (z.B. http://example.com)
  6. “Allowed redirection URL(s)”: http://localhost:3017/callback (muss mit dem -Port Parameter übereinstimmen, Standard 3017)
  7. Bei “API-Zugriff” die benötigten Bereiche ankreuzen:
  • Erforderliche Bereiche: alle write_*-Scopes auswählen (write_products, write_orders, write_customers, write_inventory, write_fulfillments, write_themes, write_content, etc.)
  • write-Scopes beinhalten automatisch den zugehörigen read-Scope
  • Zusätzlich: read_all_orders, read_apps, read_customer_payment_methods
  • Optionale Bereiche: leer lassen
  1. Version speichern und veröffentlichen (Release)
  2. Unter “Überblick” -> “Client-Anmeldedaten”: Client-ID und Client-Schlüssel (Client Secret) notieren

== EMPFOHLENE SCOPES ==

Die Standard-Scopes dieser Funktion decken alle EulandaXtools-Funktionen ab: Artikel-Export, Bestellimport, Kunden-Sync, Dokumenten-Upload, Theme-Anpassung, Collection-Verwaltung und Metafield-Operationen.

PARAMETER #

-Shop #

Type: string

Shopify-Shop-Domain, z.B. ‘mein-shop.myshopify.com’.

-ClientId #

Type: string

Client-ID aus dem Partner Dashboard (unter “Client-Anmeldedaten”).

-ClientSecret #

Type: string

Client Secret (Schlüssel) aus dem Partner Dashboard.

-Port #

Type: int
Default: 3017

Lokaler Port für den HTTP-Listener (Standard: 3017). Muss mit der “Allowed redirection URL” in der App-Konfiguration übereinstimmen.

-Scopes #

Type: string
Default: 'read_all_orders

Komma-separierte Liste der angeforderten Scopes. Standard: Umfassende Liste für alle EulandaXtools-Funktionen. write-Scopes beinhalten automatisch den zugehörigen read-Scope.

AUSGABEN #

pscustomobject -- Objekt mit AccessToken, GrantedScopes und Shop.

BEISPIELE #

# Token für einen Shop abrufen
$result = Get-ShopifyOAuthToken -Shop 'mein-shop.myshopify.com' `
  -ClientId '5d473945d182428a...' -ClientSecret 'shpss_1f7df11f...'
$result.AccessToken  # shpat_... -- diesen in Konfiguration eintragen
# Mit benutzerdefiniertem Port (muss in App-Konfiguration übereinstimmen)
$result = Get-ShopifyOAuthToken -Shop 'mein-shop.myshopify.com' `
  -ClientId '...' -ClientSecret '...' -Port 8080