Shopify-Webhook lokal testen
Eine Shopify-App zu entwickeln bedeutet, ihre Webhooks (Bestellungen, Produkte) zu handhaben — ohne bei jedem Test echte Bestellungen anzulegen. Generiere ein signiertes Shopify-Event (X-Shopify-Hmac-Sha256, base64), bearbeite den Payload und sende ihn an deinen lokalen Server, um deine HMAC-Prüfung zu validieren.
Signatur serverseitig prüfen
import crypto from 'crypto';
const hmac = req.headers['x-shopify-hmac-sha256'];
const digest = crypto
.createHmac('sha256', process.env.SHOPIFY_SECRET)
.update(rawBody, 'utf8')
.digest('base64');
const ok = crypto.timingSafeEqual(Buffer.from(hmac), Buffer.from(digest));Um einen echten Shopify-Webhook lokal zu empfangen, registriere die URL deines Relay-Tunnels in deiner Shopify-App.
Häufige Fragen
Wie simuliere ich eine Shopify-Bestellung lokal?
Wähle das Event orders/create, füge deinen App-Secret-Key ein, gib die URL deines lokalen Handlers an (über das Relay) und sende. Der X-Shopify-Hmac-Sha256-Header wird in HMAC-SHA256, base64-kodiert berechnet, genau wie bei Shopify.
Ist der Shopify-HMAC in hex oder base64?
In base64, anders als Stripe oder GitHub, die hexadezimal verwenden. Der Generator erzeugt automatisch die richtige Kodierung.
Welche Events sind verfügbar?
orders/create und products/update werden bereitgestellt, mit dem passenden X-Shopify-Topic-Header. Den JSON-Payload kannst du frei bearbeiten.
Ist Shopify kostenlos?
Shopify gehört zu den Premium-Presets, verfügbar mit dem Pro-Plan für 14,90 €/Monat.