Marquer la commande comme payée à la réception du webhook

Lorsque votre banque, votre système de facturation ou votre système de paiement confirme un paiement via votre webhook, marquez la commande correspondante comme payée. Conçu pour les commandes par virement bancaire, sur facture ou contre remboursement que Shopify ne peut pas enregistrer automatiquement.

Un seul déclencheur issu des actions intégrées d'Workflow Webhooks et d'Shopify : aucune autre application n'est nécessaire.

Le workflow dans Shopify Flow : marquer la commande comme payée à la réception d'un webhook
Le workflow complet tel qu'il apparaît dans Shopify Flow.

Ce dont il a besoin

Un webhook sur Workflow Webhooks avec ce mappage de données. 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" \
  -H "X-Api-Key: <your token>" \
  -d '{"orderNumber": "#1001"}'

Découvrez le workflow

  1. Téléchargez le fichier .flow joint au bas de cette page.
  2. Dans votre interface d'administration d'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 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 « Webhook » lance le workflow chaque fois que l'URL de votre webhook est appelée et lui transmet 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. En effet, il s'exécute une seule fois pour** chaque** commande qu'il trouve, et ne s'exécute pas du tout lorsqu'aucune commande ne correspond.
  4. La fonction « Marquer la commande comme payée » enregistre le solde restant dû de cette commande comme étant payé.

Faites-en le vôtre

  • Ajoutez une condition sur requestHeaders ou sur un champ de montant associé, puis comparez-la au montant total de la commande avant de la marquer comme payée.
  • Ajoutez des balises de commande après l'étape de paiement, par exemple paid-by-bank-transfer.

Prochaines étapes