🪝WebhookToolkit
Shopify

Tester un webhook Shopify en local

Développer une app Shopify implique de gérer ses webhooks (commandes, produits) — sans créer de vraies commandes à chaque test. Génère un event Shopify signé (X-Shopify-Hmac-Sha256, base64), édite le payload et envoie-le à ton serveur local pour valider ta vérification HMAC.

🔒 Shopify est réservé au plan Pro — Débloquer
Génère la signature pour voir les headers, le body et la commande cURL prête à coller.

Vérifier la signature côté serveur

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));

Pour recevoir un vrai webhook Shopify en local, enregistre l'URL de ton tunnel Relay dans ton app Shopify.

Questions fréquentes

Comment simuler une commande Shopify en local ?

Choisis l'event orders/create, colle ta clé secrète d'app, indique l'URL de ton handler local (via Relay) et envoie. Le header X-Shopify-Hmac-Sha256 est calculé en HMAC-SHA256 encodé en base64, exactement comme Shopify.

Le HMAC Shopify est-il en hex ou base64 ?

En base64, contrairement à Stripe ou GitHub qui utilisent de l'hexadécimal. Le générateur produit le bon encodage automatiquement.

Quels events sont disponibles ?

orders/create et products/update sont fournis, avec le header X-Shopify-Topic correspondant. Tu peux éditer librement le payload JSON.

Shopify est-il gratuit ?

Shopify fait partie des presets premium, disponibles avec le plan Pro à 14,90 €/mois.

Tester un webhook Shopify en local — X-Shopify-Hmac-Sha256 valide · Webhook Toolkit