Renvoyer le statut de la commande à la réception du webhook

Répondre à une requête HTTP en indiquant le statut de paiement et de traitement d'une commande. Un chatbot, un service d'assistance ou un portail client envoie un numéro de commande et reçoit le statut en retour dans la même réponse.

Un déclencheur provenant d'Workflow Webhooks, associé à son action « Réponse au webhook de retour » : aucune autre application n'est nécessaire.

Le workflow dans Shopify Flow : renvoyer le statut de la commande à la réception d’un webhook
The complete workflow as it appears in Shopify Flow.

Ce dont il a besoin

Un webhook dans Workflow Webhooks avec la réponse synchrone activée, voir Réponse synchrone, et ce mappage de payload. Voir Mappage de la charge utile et variables de flux.

Domaine Que lui attribuer ?
fieldOne Le numéro de commande, par exemple #1001

Un appel au webhook se présente alors comme suit :

bash
curl -X POST https://<your webhook URL> \
  -H "Content-Type: application/json" \
  -d '{"orderNumber": "#1001"}'

# Response:
# {"orders": [{"name": "#1001", "financialStatus": "PAID", "fulfillmentStatus": "UNFULFILLED"}]}

Découvrez le workflow

  1. Téléchargez le fichier .flow joint au bas de cette page.
  2. Dans l'interface d'administration de Shopify, ouvrez « Shopify Flow », cliquez sur « Importer » et sélectionnez le fichier.
  3. Vérifiez les étapes, puis cliquez sur « Activer le workflow ».

Ce fichier est issu d'une exportation réalisée directement depuis Shopify Flow. Ne le modifiez pas manuellement ; modifiez plutôt le workflow dans Shopify Flow après l'avoir importé.

Comment cela fonctionne-t-il ?

  1. Le déclencheur « Sync Webhook » lance le workflow pendant que l'appelant attend une réponse, et lui transmet l'invocationId, ainsi que les champs mappés.
  2. La fonction « Get order data » recherche la commande à l'aide de la requête name:{{fieldOne}} et ne conserve qu'un seul résultat au maximum.
  3. La réponse du webhook « Return » renvoie une liste d{"orders": [...]} à l'appelant, comprenant le nom de la commande, son statut financier et son statut de traitement. La liste est vide lorsqu'aucune commande ne correspond.

Faites-en le vôtre

  • Ajoutez d’autres champs de commande au corps de la réponse, par exemple {{order.totalPriceSet.shopMoney.amount}}.

Prochaines étapes