Découvrez comment obtenir des informations en temps réel sur vos commandes
Les Webhooks sont la solution parfaite pour recevoir des informations en temps réel. ShippyPro vous offre la possibilité de recevoir des étiquettes, des mises à jour de suivi et des messages d'erreur de commande presque instantanément.
Résumé:
Apprenez-en davantage sur nos API dans notre documentation sur les API.
-
Tout d'abord, allez dans Intégrations et API > API et cliquez sur Ajouter un Webhook.
-
Saisissez ensuite l'URL du serveur sur lequel vous souhaitez recevoir toutes les informations relatives à l'événement ou aux événements spécifiques de la liste ci-dessous.
-
Vous pourrez choisir entre : Commande expédiée, Erreur de commande et Mises à jour du suivi.
-
Ensuite, saisissez votre nom d'utilisateur et votre mot de passe pour l'authentification côté serveur de votre Webhook. Note : l'authentification n'est pas une étape obligatoire.
-
Si votre serveur ne l'a pas, vous pouvez décider de ne pas l'inclure.
-
Une fois ajouté, décidez si vous voulez activer l'option Réessayer en cas d'échec des Webhooks.
-
Vous pouvez également définir jusqu'à 10 tentatives de renvoi.
-
Enfin, décidez d'appliquer un en-tête personnalisé : qu'est-ce que c'est ?
💡 Les en-têtes personnalisés donnent la possibilité d'authentifier vos demandes de Webhooks et de rejeter celles qui ne contiennent pas ces en-têtes personnalisés.
-
Activez cette option si vous souhaitez une mesure de sécurité supplémentaire.
-
Définissez ensuite une clé et une valeur de l'en-tête pour terminer la configuration.
-
Lorsque votre Webhook sera connecté, vous pourrez soit le modifier, le supprimer ou le tester.
-
En cliquant sur Test, vous pourrez afficher toutes les informations transmises :
{
"Event": "TRACKING_UPDATE",
"tracking": "WZ116539070",
"date": 1622671204,
"message": "Shipment delivered,
"city": "Florence",
"est_delivery_date": "0",
"first_status_date": "1622152801",
"late": "0",
"code": 6,
"OrderID": "24957298",
"TransactionID": "48572_1",
"TrackingCarrier": "FedEx",
"MarketplaceID": "0",
"MarketplacePlatform": "Manual shipment",
"ExternalLink": "",
"FromAddressCompany": "John Doe srl.",
"ToAddressCompany": "",
"FromAddressCountry": "IT",
"ToAddressCountry": "IT"
}
À la première connexion d'un nouveau endpoint, ShippyPro envoie toujours le webhook order_shipped, même si l'event choisi est différent.
En cliquant sur Afficher les connexions des Webhooks, vous trouverez une liste de toutes vos connexions. Pour les filtrer par Point d'accès, Événement, Résultat ou Renvoi, vous n'aurez qu'à cliquer sur les filtres spécifiques.
Voici les informations que vous pourrez afficher dans cette section :
Date
Date de fin
ID Commande
ID Transaction
Transporteur
Point d'accès
Événement
Résultat
Renvoi
Délai écoulé
Requête
Réponse
Les Webhooks fonctionnent aussi sur les retours !
Les fichiers de Webhooks sont au format Json.
Je suis en train de connecter des webhooks et je reçois "HTTP response must be in JSON format. Please Retry" dans la réponse
Généralement, l'erreur apparaît si le type de contenu de la réponse n'a pas été défini comme application/json. Vous devez vous assurer que la réponse est formatée en application/json ou bien renvoyer un code HTTP 204 sans corps de réponse.
Lorsque j'envoie un webhook à mon serveur, je reçois la réponse suivante : {"success":false, "reason" : "CSRF token mismatch"}
Il s'agit d'une erreur généralement causée par un pare-feu qui a bloqué la réception du webhook.
Assurez-vous d'avoir supprimé le blocage de notre IP et essayez de faire un nouvel appel API.
En général, le test du webhook ne passe que si :
code HTTP entre 200 et 300 + réponse en json
ou
code HTTP 204 (pas de résultat) et réponse non json
Quelle est l'adresse IP publique utilisée pour les mises à jour des webhooks ?
Les webhooks proviennent d'une adresse IP aléatoire, donc si vous souhaitez définir une adresse IP statique, vous aurez besoin d'un devis supplémentaire de la part de notre département des ventes. Veuillez nous contacter à l'adresse suivante : sales@shippypro.com
HTTP response code is 403, it must be 200. Please Retry!
Le code d'erreur 403 indique que la requête est valide, mais votre serveur refuse d'accepter notre demande de création (l'authentification n'est pas prise en compte).
Une fois que vous avez résolu le problème d'authentification pour l'endpoint spécifique, vous pourrez vous connecter correctement au webhook.
Quelle est la signification de chaque statut ?
Vous trouverez ici une liste des statuts qui peuvent être affichés ainsi que leur signification:
1×× Information
2×× Succès
3×× Redirection
4×× Erreur Client
-
400 Bad Request
-
401 Unauthorized
-
402 Payment Required
-
403 Forbidden
-
404 Not Found
-
405 Method Not Allowed
-
406 Not Acceptable
-
407 Proxy Authentication Required
-
408 Request Timeout
-
409 Conflict
-
410 Gone
-
411 Length Required
-
412 Precondition Failed
-
413 Payload Too Large
-
414 Request-URI Too Long
-
415 Unsupported Media Type
-
416 Requested Range Not Satisfiable
-
417 Expectation Failed
-
418 I'm a teapot
-
421 Misdirected Request
-
422 Unprocessable Entity
-
423 Locked
-
424 Failed Dependency
-
426 Upgrade Required
-
428 Precondition Required
-
429 Too Many Requests
-
431 Request Header Fields Too Large
-
444 Connection Closed Without Response
-
451 Unavailable For Legal Reasons
-
499 Client Closed Request
5×× Erreur Serveur
Si l'erreur que vous recevez est le code de réponse HTTP response code is 500, it must be 200, l'erreur 500 indique que le webhook ajouté est inaccessible.
Le code de statut HTTP 500 est une réponse d'erreur générique. Cela signifie que le serveur a rencontré une condition inattendue qui l'a empêché de répondre à la demande, c'est-à-dire que le serveur est inaccessible.
Si vous avez besoin de plus d'informations sur le fonctionnement de la tarification, consultez notre page de tarification. 🚀