WebhookToolkit
Shopify

Testowanie webhooka Shopify lokalnie

Tworzenie aplikacji Shopify wymaga obsługi jej webhooków (zamówienia, produkty) — bez tworzenia prawdziwych zamówień przy każdym teście. Wygeneruj event Shopify podpisany (X-Shopify-Hmac-Sha256, base64), edytuj payload i wyślij go do swojego lokalnego serwera, aby zwalidować weryfikację HMAC.

🔒 Shopify jest zarezerwowany dla planu Pro — Odblokuj
Wygeneruj podpis, aby zobaczyć headery, body i gotowe do wklejenia polecenie cURL.

Zweryfikuj podpis po stronie serwera

handler.js (Node)
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));

Aby odebrać prawdziwy webhook Shopify lokalnie, zarejestruj URL swojego tunelu Relay w swojej aplikacji Shopify.

Najczęstsze pytania

Jak zasymulować zamówienie Shopify lokalnie?

Wybierz event orders/create, wklej tajny klucz swojej aplikacji, podaj URL swojego lokalnego handlera (przez Relay) i wyślij. Header X-Shopify-Hmac-Sha256 jest obliczany w HMAC-SHA256 zakodowanym w base64, dokładnie jak w Shopify.

Czy HMAC Shopify jest w hex czy base64?

W base64, w przeciwieństwie do Stripe czy GitHub, które używają systemu szesnastkowego. Generator tworzy właściwe kodowanie automatycznie.

Jakie eventy są dostępne?

Dostępne są orders/create i products/update, z odpowiadającym headerem X-Shopify-Topic. Możesz dowolnie edytować payload JSON.

Czy Shopify jest darmowy?

Shopify należy do presetów premium, dostępnych z planem Pro za 14,90 €/miesiąc.

Testowanie webhooka Shopify lokalnie — Prawidłowy X-Shopify-Hmac-Sha256 · Webhook Toolkit