Visser Labs – Plugins WooCommerce

  1. Accueil
  2. Base de connaissances
  3. WooCommerce Store Exporter Deluxe
  4. Automatisation & Planification
  5. Comment poster les exportations vers une URL distante dans Store Exporter Deluxe
  1. Accueil
  2. Base de connaissances
  3. WooCommerce Store Exporter Deluxe
  4. Comment poster les exportations vers une URL distante dans Store Exporter Deluxe

Comment poster les exportations vers une URL distante dans Store Exporter Deluxe

Confier un fichier d'exportation à un autre système manuellement, qu'il s'agisse d'un outil de reporting, d'un système d'inventaire ou d'un script que vous exécutez vous-même, signifie que quelqu'un doit se connecter, télécharger le fichier, puis le télécharger à nouveau. Store Exporter Deluxe peut s'occuper de cette dernière étape pour vous. Chaque fois qu'une exportation planifiée s'exécute, elle envoie le fichier terminé à une adresse Web que vous choisissez en utilisant une requête HTTP POST.

Ci-dessous, vous configurez POST vers URL, voyez exactement ce que votre point de terminaison reçoit et confirmez l'arrivée de chaque fichier. Les développeurs disposent également d'un moyen d'ajouter des en-têtes tels qu'un jeton d'API.

Prérequis

ExigenceDétails
PluginStore Exporter Deluxe est actif
Exportations planifiéesLes exportations planifiées sont activées sous Paramètres → Planification → Activer les exportations planifiées. Si elles sont désactivées, l'écran Exportations planifiées affiche « Les exportations planifiées sont actuellement désactivées. » avec un bouton Activer les exportations planifiées.
Point de terminaison de réceptionUne adresse Web (URL) qui accepte les requêtes POST et est accessible depuis le serveur de votre site
Accès au point de terminaisonUn moyen de vérifier les journaux du système de réception lui-même, afin que vous puissiez confirmer l'arrivée des fichiers

Comment ça marche

Lorsqu'une planification utilisant POST vers URL s'exécute, Store Exporter Deluxe crée le fichier d'exportation comme d'habitude, puis l'envoie à votre URL POST distante dans une seule requête HTTP POST. La requête est toujours une POST. Il n'y a pas de paramètre pour la changer en une autre méthode.

Ce que votre point de terminaison reçoit

Votre point de terminaison reçoit le contenu du fichier d'exportation comme corps brut de la requête. Il n'arrive pas sous forme de formulaire de téléchargement de fichier, il n'y a donc pas de champ de formulaire à partir duquel lire le fichier. Si la description des Paramètres d'URL distants sur votre écran mentionne une requête POST multipart, référez-vous à cette section : le fichier est le corps brut de la requête.

Partie de la requêteCe qu'il contient
MéthodePOST
CorpsLe contenu complet du fichier d'exportation, exactement tel qu'il apparaîtrait dans le fichier téléchargé
En-tête content-typeLe type MIME qui correspond à votre Format d'exportation (voir le tableau ci-dessous)
En-tête acceptLe même type MIME que l'en-tête content-type
En-tête user-agentWordPress/ suivi de votre version de WordPress

Store Exporter Deluxe n'envoie pas le nom du fichier, de champs de formulaire supplémentaires, ni d'informations de connexion. Il attend jusqu'à 60 secondes pour une réponse et ne suit pas les redirections, alors entrez l'adresse finale de votre point de terminaison.

L'en-tête content-type dépend du Format d'exportation que vous choisissez pour la planification :

Format d'exportationValeur content-type
CSVtext/csv
TSVtext/tab-separated-values
Excel (XLS)application/vnd.ms-excel
Excel (XLSX)application/vnd.openxmlformats-officedocument.spreadsheetml.sheet
XMLapplication/xml
RSS 2.0application/rss+xml

Configuration de POST vers URL

Les étapes ci-dessous décrivent la création d'un nouvel Export Planifié. Pour modifier un planning existant, ouvrez-le depuis l'écran Exports Planifiés. Pour en savoir plus sur la création et la gestion des plannings, consultez Comment planifier des exports dans Store Exporter Deluxe.

Étape 1 : Ouvrir le formulaire de nouveau planning

  1. Accédez à WooCommerce → Exportation du magasin.
  2. Dans la barre latérale de Store Exporter, cliquez sur Exports Planifiés.
  3. Cliquez sur Nouveau Planning. Le formulaire s'ouvre avec l'en-tête Ajouter un Nouvel Export Planifié et cinq étapes en haut : Général, Filtres, Méthode, Planification et Avancé.
L'écran Exportations Planifiées avec le bouton Nouvelle Planification en haut à droite mis en surbrillance

Étape 2 : Choisir quoi exporter

Dans l'étape Général, configurez l'export lui-même.

  1. Entrez un nom dans Nom du Planning. Ce champ est obligatoire.
  2. Choisissez le type de données dans Type d'Export, par exemple Produits ou Commandes.
  3. Choisissez le type de fichier dans Format d'Export. Choisissez un format que votre point de terminaison peut lire dans le tableau Format d'Export sous « Ce que votre point de terminaison reçoit » ci-dessus.
  4. Sous Champs d'exportation, choisissez Tous les champs, Utiliser un modèle ou Sélection enregistrée.

L'étape Général contient également des options de formatage de fichier et de données, telles que le délimiteur de colonne et le formatage de l'en-tête. Laissez-les tels quels, sauf si votre point de terminaison attend une disposition particulière.

L'étape Générale du formulaire de nouvelle planification montrant le Nom de la Planification, le Format d'Exportation et les options Champs d'Exportation marqués de 1 à 3

Étape 3 : Affiner l'export avec des filtres (facultatif)

Ouvrez l'étape Filtres si vous ne souhaitez envoyer que certains enregistrements, par exemple des commandes avec un certain statut. Sautez cette étape pour envoyer tous les enregistrements correspondants.

Étape 4 : Choisir POST vers URL

  1. Cliquez sur l'étape Méthode.
  2. Sous Méthode de Livraison, sélectionnez la carte POST vers URL.
  3. Sous Paramètres de l'URL distante, entrez l'adresse de votre point de terminaison dans URL POST distante, par exemple https://example.com/webhook/receive.
Les cartes Méthode de Livraison avec POST vers URL sélectionnée, et le panneau Résumé de la Planification montrant la Méthode comme POST vers URL distante

Le panneau Résumé du Planning sur la droite se met à jour pour afficher POST vers URL distante une fois la carte sélectionnée.

Le champ URL POST distante rempli avec une adresse exemple

Le champ URL POST distante est le seul paramètre de cette méthode de livraison. Utilisez l'adresse complète, y compris https://.

Étape 5 : Définir quand il s'exécute

Dans l'étape Planification, choisissez la fréquence d'exécution de l'export.

  • Horaire : toutes les heures.
  • Quotidien : une fois par jour.
  • Hebdomadaire : une fois par semaine.
  • Mensuel : le 1er de chaque mois.
  • Personnalisé : un intervalle répétitif que vous définissez dans Exécuter toutes les.
  • Manuel : uniquement lorsque vous l'exécutez vous-même.

Choisissez une heure et un fuseau horaire pour l'exécution, et décidez si elle démarre immédiatement ou à une date que vous définissez. Pour exécuter à l'heure locale de votre boutique, consultez Comment planifier les exportations selon votre heure locale.

L'étape Planification montrant les options de Fréquence, les champs heure et fuseau horaire, et les options de Démarrage marqués de 1 à 3

Étape 6 : Examiner les options avancées

L'étape Avancé propose plus d'options, telles que la dénomination des fichiers, la gestion des archives et la journalisation. Deux d'entre elles sont les plus importantes pour POST vers l'URL :

  • Modèle de nom de fichier : nomme le fichier d'exportation sur votre site. Le nom du fichier n'est pas envoyé à votre point de terminaison.
  • Niveau de journalisation : définit la quantité de détails que le journal d'audit enregistre pour cette planification. Cette option n'apparaît que lorsque le journal d'audit est activé et que la source de journalisation Exportations planifiées n'est pas définie sur Aucun (Paramètres → Journal d'audit → Sources de journalisation).

Étape 7 : Enregistrer la planification

  1. Vérifiez le panneau Résumé de la planification à droite. La Méthode doit indiquer POST vers l'URL distante.
  2. Cliquez sur Créer la planification. Sur une planification existante, ce bouton indique Enregistrer la planification.

Vérifier que le fichier est arrivé

Store Exporter Deluxe enregistre s'il a pu atteindre votre point de terminaison, mais il ne lit pas la réponse de votre point de terminaison. Vérifiez donc les deux côtés :

  1. Ouvrez le journal des requêtes de votre point de terminaison, ou l'outil de réception, et recherchez une requête POST au moment où la planification s'est exécutée.
  2. Confirmez que le corps de la requête est le fichier d'exportation et qu'il s'ouvre correctement.
  3. Dans WordPress, accédez à Exportations planifiées dans la barre latérale de Store Exporter. La liste Activité récente y affiche chaque exécution. Cliquez sur Erreurs uniquement, à côté de Toute l'activité, pour afficher uniquement les exécutions échouées. Cliquez sur Toute l'activité pour voir à nouveau toutes les exécutions.
  4. Pour plus de détails, ouvrez le Journal d'audit depuis la même barre latérale et trouvez l'exécution.
La liste Activité Récente sur l'écran Exportations Planifiées avec le bouton Erreurs Uniquement mis en surbrillance

Le journal d'audit est activé par défaut. L'élément Journal d'audit apparaît dans la barre latérale de Store Exporter uniquement lorsque le journal d'audit est activé. S'il est désactivé, accédez à Paramètres dans la barre latérale de Store Exporter, ouvrez la section Journal d'audit et activez Activer le journal d'audit.

Pour tester sans attendre la prochaine exécution planifiée, pointez URL POST distante vers un service de capture de requêtes pendant que vous configurez les choses. Sur l'écran Exportations planifiées, cliquez sur le menu à trois points dans la ligne de la planification et cliquez sur Exécuter maintenant, puis vérifiez ce qui est arrivé. Ensuite, remplacez l'adresse par votre point de terminaison réel.

Si une requête ne peut pas se connecter du tout, par exemple parce que l'adresse est mal tapée, le serveur est en panne ou la connexion expire, l'exécution est marquée comme échouée dans le journal d'audit. Store Exporter Deluxe envoie le fichier une fois par exécution. La prochaine exécution planifiée crée et envoie un nouveau fichier.

Ajout d'une clé API ou d'autres en-têtes (développeurs)

L’écran des réglages ne contient aucun champ pour les en-têtes d’authentification. Si votre point de terminaison nécessite une clé API ou un jeton, un développeur peut ajouter des en-têtes avec le filtre wsed_scheduled_export_post_args. Ajoutez ce code à un plugin personnalisé ou au fichier functions.php de votre thème enfant :

add_filter( 'wsed_scheduled_export_post_args', function ( $args ) {
    $args['headers']['Authorization'] = 'Bearer YOUR_API_TOKEN';
    return $args;
} );

Remplacez VOTRE_JETON_API par le jeton attendu par votre point de terminaison. Le code s’ajoute aux en-têtes existants au lieu de les remplacer, ainsi l’en-tête content-type reste en place.

Ce filtre s’applique à chaque planification qui utilise Poster à l’URL, y compris le Déclencheur de nouvelle commande dans Réglages. Il ne peut pas envoyer différents en-têtes à différents points de terminaison.

Dépannage

Le journal d’audit affiche une exécution échouée pour ma planification Poster à l’URL
Vérifiez que l’URL de publication distante est correctement orthographiée et inclut https://. Confirmez ensuite que le serveur de réception est en ligne et qu’il ne bloque pas les requêtes de l’adresse IP de votre fournisseur d’hébergement. Store Exporter Deluxe enregistre un échec lorsqu’il ne parvient pas à se connecter à votre point de terminaison.
L’exécution s’affiche comme terminée, mais rien n’est arrivé à mon point de terminaison
Vérifiez les journaux de votre point de terminaison pour une requête rejetée, telle qu’une erreur de connexion ou un type de contenu incorrect. S’il nécessite une clé API, ajoutez l’en-tête en utilisant le filtre dans la section développeur ci-dessus. Store Exporter Deluxe marque une exécution comme terminée une fois que la requête atteint votre serveur, quelle que soit la réponse du serveur.
Mon point de terminaison reçoit la requête mais ne trouve pas le fichier
Le fichier est le corps brut de la requête, pas un champ de formulaire. Mettez à jour votre point de terminaison pour lire directement le corps de la requête au lieu de rechercher un fichier téléchargé.
Mon point de terminaison redirige la requête vers une autre adresse
Store Exporter Deluxe ne suit pas les redirections. Entrez l’adresse finale dans URL de publication distante, par exemple l’adresse https:// si votre point de terminaison redirige depuis http://.
Je ne trouve pas Exportations planifiées dans la barre latérale de Store Exporter
Allez dans Réglages dans la barre latérale de Store Exporter, ouvrez la section Avancé, et désactivez Masquer l’onglet Exportations planifiées. Lorsque cette option est activée, l’élément Exportations planifiées est supprimé de la barre latérale.
Une grande exportation expire
Store Exporter Deluxe attend jusqu’à 60 secondes que votre point de terminaison réponde. Si votre point de terminaison prend plus de temps, réduisez l’exportation à l’étape Filtres afin qu’elle produise un fichier plus petit.

Questions fréquemment posées

Puis-je utiliser PUT ou une autre méthode au lieu de POST ?
Non. La requête est toujours un POST HTTP.
Puis-je ajouter une clé API ou un en-tête d’autorisation ?
Pas depuis l’écran des réglages. Un développeur peut ajouter des en-têtes avec le filtre wsed_scheduled_export_post_args. Voir la section développeur ci-dessus.
Le fichier est-il envoyé comme un téléversement de formulaire ?
Non. Le contenu du fichier est le corps brut de la requête, avec un en-tête content-type qui correspond au format d’exportation.
Store Exporter Deluxe réessaie-t-il si la requête échoue ?
Non. Il envoie le fichier une fois par exécution. La prochaine exécution planifiée envoie un nouveau fichier.
Le point de terminaison reçoit-il le nom du fichier ?
Non. Seul le contenu du fichier et les en-têtes listés ci-dessus sont envoyés.
La méthode POST vers une URL est-elle disponible dans le plugin gratuit Store Exporter ?
Non. Les Exportations Planifiées et chaque méthode de livraison font partie de Store Exporter Deluxe.

Besoin d'aide ?

Si vous avez une question ou rencontrez des problèmes, nous sommes là pour vous aider.

Cet article vous a-t-il été utile ?

Articles Liés

Ressources et aide