Comment utiliser l'API de WooCommerce

WooCommerce
Comment utiliser l'API de WooCommerce

WordPress est le système de gestion de contenu le plus populaire. Les propriétaires de sites ont utilisé WordPress pour une variété d'utilisations grâce à des plugins. WooCommerce transforme un site WordPress en une boutique de commerce électronique. En plus de la fonctionnalité de base d'un site WooCommerce, il est possible d'utiliser l'API WooCommerce pour étendre les caractéristiques et la fonctionnalité de la boutique de commerce électronique. Dans cet article, vous apprendrez à utiliser l'API WooCommerce pour interagir avec votre boutique WooCommerce.

WooCommerce API est une extension de WordPress REST API. L'API REST de WordPress en PHP permet à une application d'interagir avec les fonctionnalités de WordPress. On peut utiliser l'API WooCommerce pour lire, créer, mettre à jour et supprimer des données dans votre boutique de commerce électronique. Cet article explore chacune de ces tâches pour vous permettre d'effectuer des requêtes API en interaction avec votre boutique WooCommer. Vous pouvez ensuite utiliser ces appels API pour créer votre propre plugin ou connecter une application web basée sur PHP à WooCommerce.

Lorsque vous effectuez un appel REST API, WooCommerce et WordPress se connectent au backend PHP et SQL pour traiter votre demande et générer la sortie.

Plus loin dans le tutoriel, nous incluons de nombreux exemples de requêtes GET et PUT que vous pouvez copier ou modifier vous-même pour étendre les fonctionnalités de votre boutique WooCommerce en créant un plugin en PHP.

If you just are trying to integrate WooCommerce with another web application and not build a custom API I would highly recommend using something like Zapier or Integromat instead.

C'est parti !

Étape 1 : Activer l'accès API dans WooCommerce

La première étape avant de pouvoir utiliser l'API WooCommerce est de l'activer dans l'administration de WordPress. Pour activer l'API REST de WooCommerce, connectez-vous au backend de votre site WordPress, survolez WooCommerce > Paramètres > Avancé.

Ensuite, basculez dans l'onglet Legacy API et sélectionnez Enable the legacy REST API.

Étape 2 : Ajouter une clé API avec accès en lecture/écriture

Après avoir activé l'API REST de WooCommerce, vous devez créer une clé API. La clé que vous générez au cours de ce processus authentifiera vos demandes d'API. Une clé API garantit que WooCommerce ne répond qu'aux demandes API légitimes.

Dans l'administration de WordPress, cliquez sur REST API pour ajouter une clé. Entrez la description, sélectionnez l'utilisateur et les autorisations et cliquez sur Generate API Key.

woocommerce-api-key-details

Quel que soit votre nom, la description n'a pas d'importance.

Pour ce tutoriel, nous vous recommandons de donner un accès en lecture/écriture. Cela vous permettra de créer, lire, mettre à jour et supprimer des données WooCommerce via l'API.

Une fois terminé, cliquez sur Generate API key. Remarquez les deux chaînes alphanumériques - il s'agit de votre clé de consommateur et de votre secret de consommateur.

woocommerce-api-consumer-keys-secret

Copiez votre clé de consommateur et votre secret de consommateur dans un endroit sûr. Nous en aurons besoin pour nous connecter à l'API REST de WooCommerce. Ces clés sont traitées par le backend PHP à chaque fois qu'une requête est effectuée. Si vous utilisez le contrôle de version pour gérer votre code avec GitHub, ne commettez pas la clé dans le dépôt.

Étape 3 : Télécharger un client API comme Insomnia

Bien que vous ayez activé l'API WooCommerce et créé une clé d'API à utiliser, vous aurez besoin d'un client d'API pour faire des demandes et voir les réponses. Vous utiliserez vos clés API pour connecter WooCommerce à votre site WordPress via un client API.

Pour les besoins de ce tutoriel, vous pouvez télécharger Insomnia, le client API que nous utiliserons pour tester les requêtes GET et PUT.

Vous pouvez également télécharger Postman pour effectuer des demandes d'API. Insomnia et Postman vous permettent tous deux d'effectuer des appels d'API via des applications de bureau ou des extensions de navigateur.

Étape 4 : Utilisez vos clés API pour vous connecter à Insomnia.

Après avoir téléchargé Insomnia, effectuons notre premier appel API. Ouvrez l'application Insomnia et cliquez sur New Request.

Dans la liste déroulante de l'onglet Basic, cliquez sur Basic Auth:

Ensuite, entrez votre clé de consommateur et votre secret de consommateur. Définissez les champs comme indiqué ci-dessous.

  • nom d'utilisateur = clé du consommateur
  • mot de passe = consumer_secret

Étape 5 : Faites votre première requête GET

Après avoir configuré l'application Insomnia, vous êtes maintenant prêt à faire des demandes API. Vous pouvez commencer par une requête GET pour obtenir toutes les commandes, juste pour vous assurer que les clés API fonctionnent correctement.

Dans la requête GET, saisissez une requête GET pour afficher toutes les commandes :

https://yourdomain.com/wp-json/wc/v3/orders

La réponse de cette requête API est un JSON fort et Insomnia l'analyse pour vous. Vous devriez voir toutes les commandes de votre magasin dans la sortie.

Si tout ne fonctionne pas bien, vous risquez d'obtenir l'erreur 401 avec le message - "Sorry, you are not allowed to edit this resource". Pour résoudre cette erreur, vous pouvez consulter cet article sur la façon de résoudre les problèmes courants de l'API REST de WooCommerce.

Étape 6 : Effectuez votre première requête PUT

Une fois que vous avez effectué avec succès une demande GET, vous pouvez maintenant aller plus loin. Comme pour la requête GET, vous pouvez effectuer une requête PUT pour mettre à jour une seule commande sur le serveur. Outre le fait que les clés API fonctionnent correctement, cette requête garantit que vous disposez d'un accès en lecture et en écriture.

Pour mettre à jour une commande, vous pouvez d'abord faire une demande GET pour afficher les détails d'une seule commande :

https://yourdomain.com/wp-json/wc/v3/orders/{insert order ID}
Dans mon exemple, la requête GET était l'URL suivante :

https://yourdomain.com/wp-json/wc/v3/orders/39645/

Ensuite, cliquez sur le menu déroulant GET et choisissez l'option PUT pour faire une demande d'écriture au serveur.

Ensuite, allez dans la liste déroulante pour choisir JSON. JSON est un format dans lequel vous envoyez les détails de l'écriture par le biais de la requête.

Utilisez cet exemple pour mettre à jour le statut de la commande de "traitement" à "terminé".

{
  "status": "completed"
}

Conseils utiles

  • La clé du consommateur doit commencer par "ck_".
  • Le secret du consommateur doit commencer par "cs_".
  • Si nécessaire, vous pouvez toujours régénérer vos clés API à nouveau dans WooCommerce.

Exemples de requêtes GET de WooCommerce

Maintenant que vous avez réussi à faire des demandes de lecture et d'écriture au serveur par le biais des clés API, explorons des exemples d'autres demandes GET.

Si vous ne parvenez pas à retrouver l'un de ces exemples, assurez-vous de faire défiler la page vers le haut pour savoir comment effectuer des requêtes GET.

GET toutes les commandes

https://yourcompany.com/wp-json/wc/v3/orders/

GET une seule commande

https://yourcompany.com/wp-json/wc/v3/orders/{insert order ID}

Par exemple, l'ID de la commande est 82513, et j'utiliserais donc le chemin URL suivant pour récupérer cette commande :

https://yourcompany.com/wp-json/wc/v3/orders/82513/

Astuce : Trouvez l'ID de la commande en cliquant sur la commande et en regardant le numéro après "post=". Voir la capture d'écran ci-dessous pour référence.

Obtenir tous les produits

https://yourcompany.com/wp-json/wc/v3/products/

Obtenir un produit unique

https://yourcompany.com/wp-json/wc/v3/products/{insert product ID}

GET une variation de produit

https://yourcompany.com/wp-json/wc/v3/products/{insert product ID}/variations/{insert variation ID}

GET tous les clients

https://yourcompany.com/wp-json/wc/v3/customers/

GET un seul client

https://yourcompany.com/wp-json/wc/v3/customers/{insert customer ID}

Exemples de demandes PUT de WooCommerce

Ensuite, explorons quelques exemples de demandes d'écriture.

Mise à jour du prix du produit

Pour mettre à jour le "regular_price", voici un exemple de requête PUT :

https://yourcompany.com/wp-json/wc/v3/products/{insert product ID}
Cliquez sur Corps > JSON et entrez cette requête

{
"regular_price": "81"
}

Mise à jour du prix du produit et de la quantité en stock

Pour mettre à jour le "regular_price" et le "stock_quantity", voici un exemple de requête PUT :

{
 "regular_price": "81”,
 “stock_quantity": 45
}

Mise à jour des métadonnées du produit

Pour mettre à jour les métadonnées d'un produit, voici un exemple de demande PUT :

{
  "meta_data": [
    {
      "key": "_net_price",
      "value": "40"
    }
  ]
}

Passez la "clé" comme nom du champ de la base de données, et la valeur comme valeur.

Mise à jour du prix de la variante du produit

exemple d'url : https://yourdomain.com/wp-json/wc/v3/products/833/variations/854

Pour mettre à jour le "prix" ou le "regular_price" d'un produit ou d'une variante de produit, voici un exemple de demande PUT :

Cliquez sur Corps > JSON et entrez cette requête

{
 "regular_price": "81"
}

Passez la "clé" comme nom du champ de la base de données, et la "valeur" comme valeur.

Mise à jour du nom et du prénom du client

exemple d'url : https://yourdomain.com/wp-json/wc/v3/customers/3144/

  • Remplacez https://yourdomain.com par votre domaine
  • Remplacez 3144 par un identifiant client spécifique dans votre magasin.
  • Trouvez l'ID du client en cliquant sur "modifier" sur le client spécifique dans WooCommerce et recherchez la valeur après user_id=XXXX. Dans l'exemple ci-dessous, l'ID du client est 3144.

woocommerce-api-customer-id

Pour mettre à jour le "first_name" et le "last_name", voici un exemple de requête PUT :

Cliquez sur Corps > JSON et entrez cette requête

{
  "first_name": "John",
  "last_name": "Doe"
}

Mise à jour de l'adresse de livraison du client

Pour mettre à jour l'adresse de livraison d'un client, voici un exemple de demande PUT :

Cliquez sur Corps > JSON et entrez cette requête

{
  "shipping": {
    "first_name": "John",
    "last_name": "Doe",
    "company": "Storm Creek",
    "address_1": "110 Demo Drive",
    "address_2": "Suite 110",
    "city": "Minneapolis",
    "state": "MN",
    "postcode": "94203",
    "country": "US"
  }
}

Mise à jour des métadonnées des postes dans un ordre

Utilisez cet exemple pour mettre à jour les métadonnées des postes dans une commande spécifique. Je vous recommande d'effectuer une requête GET et de visualiser les métadonnées de la commande.

{
	"line_items": [
		{
			"id": 6316,
			"meta_data": [
				 {
          "id": 62589,
          "key": "_zoho_books_item_id",
          "value": "366243000000151613",
          "display_key": "_zoho_books_item_id",
          "display_value": "366243000000151613"
				 }
			 ]
		 }
	 ]
}

Conseils utiles et ressources supplémentaires

Si vous avez des questions ou si vous cherchez d'autres exemples, faites-le moi savoir dans les commentaires.

Je ferai de mon mieux pour vous aider en temps utile et j'ajouterai également des exemples supplémentaires à cet article pour les futurs lecteurs.

API WooCommerce

API WooCommerce

Voir la documentation détaillée sur l'API WooCommerce.

Lire la suite

Laissez une réponse

Politique en matière de commentaires : Nous aimons les commentaires et apprécions le temps que les lecteurs consacrent à partager leurs idées et à donner leur avis. Cependant, tous les commentaires sont modérés manuellement et ceux qui sont considérés comme des spams ou des messages à caractère exclusivement promotionnel seront supprimés. Votre adresse électronique ne sera pas publiée. Les champs obligatoires sont marqués*.

Commentaires

  1. Wesley Townie 21 avril 2019 | 8:08 pm

    Merci Simon pour toute l'aide apportée. Savez-vous comment je pourrais mettre à jour l'adresse de livraison d'un client avec l'API ?

    • Simon Gondeck 21 avril 2019 | 9:47 pm

      Wesley - Heureux que vous l'ayez apprécié ! J'ai ajouté un exemple à la fin du tutoriel sur la façon de mettre à jour l'adresse de livraison d'un client.

  2. Ismail Kimyacioglu 3 juillet 2019 | 1:24 pm

    Salut Simon,

    Merci pour ce tutoriel. Je gère une boutique en ligne et j'aimerais importer des produits en vrac d'une société fournisseur. Je leur ai demandé de me fournir un fichier XML afin que je puisse facilement télécharger en convertissant le fichier XML en CSV avec le schéma de Woocommerce.

    Cependant, ils m'ont envoyé des informations sur l'API Rest. J'ai cherché sur Google pour comprendre le concept, mais sans succès pour l'instant.

    Comme expliqué sur le web, j'ai activé l'API patrimoniale et généré les ck et cs. Cependant, je ne comprends toujours pas où je dois écrire les ck et cs du fournisseur.

    Pouvez-vous m'aider ?

    Merci d'avance.

    • Simon Gondeck 3 juillet 2019 | 14 h 20

      Bonjour Ismail, pouvez-vous expliquer plus en détail les informations que la société vendeuse vous a envoyées ? Par exemple, est-ce que votre fournisseur vous a envoyé sa consumer_key et sa consumer_secret? Si c'est le cas, la raison pour laquelle ils fournissent leurs clés afin que vous puissiez vous connecter à l'API REST de leur magasin. En outre, avez-vous téléchargé un client API tel qu'Insomnia ou Postman pour vous connecter à l'API REST ?

      • Ada 23 juillet 2020 | 6:43 pm

        Salut Simon, j'ai un problème similaire avec Ismail. J'ai téléchargé Insomnia. J'ai inséré le lien fourni par le grossiste, cs & ck générés par mon API REST. J'ai obtenu un 200 OK. Maintenant je suis bloqué sur la façon de transférer les données générées sur mon site web.
        Pouvez-vous m'aider ?

        • manos 5 mars 2021 | 9:55 am

          Bonjour, avez-vous trouvé une solution à votre problème ? Si non, je pense que je peux vous aider. Envoyez-moi un courriel.

      • Angelina Sander 24 août 2020 | 11:14 am

        Salut Simon,
        Je suis dans la même situation qu'Ismail. J'ai besoin d'importer des produits sur mon site depuis un fournisseur qui m'a fourni une seule clé API. J'ai déjà téléchargé Insomnia et connecté mon site avec les ck & cs et testé les deux GET & PUT. Tout fonctionne. Mes questions sont les suivantes : où dois-je entrer la clé API du fournisseur qu'il m'a fournie ou comment dois-je configurer le fichier pour transférer les informations de son site vers le mien en utilisant sa clé API ? Je vous remercie pour votre aide.

        • Manos Smar 5 mars 2021 | 9:54 am

          Bonjour, avez-vous trouvé une solution à votre problème ? Si non, je pense que je peux vous aider. Envoyez-moi un courriel.

  3. Jannath Hussain 25 juillet 2019 | 1:34 am

    Salut Simon,

    Tout comme les api de Magento, avons-nous un flux d'api de repos de la connexion à la commande et à la déconnexion dans Wordpress ????.

  4. jibs 19 août 2019 | 7:26 pm

    Salut Simon, un billet utile. Merci. En utilisant Insomnia, si j'envoie la clé et le secret dans l'URL en tant que paramètres de chaîne de requête, je peux le faire fonctionner, mais comme vous l'avez décrit (acheter en utilisant Basic Auth), j'obtiens la réponse ci-dessous. Avez-vous une idée ?

    {
      "code": "woocommerce_rest_cannot_edit",
      "message": "Sorry, you are not allowed to edit this resource.",
      "data": {
        "status": 401
      }
    }
    • Simon Gondeck 19 août 2019 | 9:24 pm

      Bonjour Jibs, WooCommerce mentionne qu'occasionnellement certains serveurs peuvent ne pas analyser correctement l'en-tête d'autorisation. Cela peut être dû à l'utilisation de WP Super Cache ou W3 Total Cache. Robot Ninja a écrit un excellent article qui passe en revue les problèmes courants de l'API REST de WooCommerce et comment les résoudre. Regardez le problème n°1 (les plugins de mise en cache suppriment les en-têtes) et le problème n°4 sur ce lien : Comment résoudre les problèmes courants liés à l'API REST de WooCommerce

      Par ailleurs, lorsque vous avez généré vos clés API, êtes-vous administrateur du site ? Vous pouvez également essayer de régénérer vos clés API et de vous assurer que vous disposez d'un accès en lecture et en écriture, mais je suppose que vous l'avez déjà fait.

      Toutes les demandes renvoient-elles cette erreur ? Par exemple, pouvez-vous effectuer des requêtes GET mais pas des requêtes PUT ou POST ?

      • jibs 20 août 2019 | 10:13 pm

        Wow, Simon. Merci. Le n°4 a fait l'affaire. Vous m'avez épargné beaucoup de dépannage !

    • Données 3 juillet 2020 | 9:50 pm

      J'ai passé beaucoup de temps - toute la nuit - à essayer de réparer ce "401 : Sorry, you are not allowed to edit this resource". Le lien partagé par Simon est excellent bien qu'il n'ait pas fonctionné comme indiqué pour moi. Dans mon cas, avec mon propre serveur VPS, ce qui a fonctionné pour moi, c'est d'aller dans WHM, puis sous Configuration des services, de cliquer sur Configuration d'Apache. Dans "Include Editor :" dans "Pre Main Include", j'ai sélectionné All Versions et collé ceci depuis le lien de Simon :

      SetEnvIf Authorization "(.*)" HTTP_AUTHORIZATION=$1

      Lors de la mise à jour, il sera demandé de redémarrer Apache. Redémarrez et testez votre API - cela devrait fonctionner. Si vous recevez une erreur interne 500, il suffit de désactiver et réactiver le plugin woo-commerce dans la section plugins de WordPress.

      J'espère que cela aidera quelqu'un et lui épargnera des heures de frustration.

  5. Charles 26 septembre 2019 | 11:59 pm

    Salut Simon,
    Merci pour ce bon tutoriel ! J'ai besoin d'utiliser l'API pour le traitement des paiements par une autre partie. Ils ont un ensemble de variables qui doivent passer dans l'API (voir ci-dessous la requête xml) basée sur un numéro de commande généré précédemment par un utilisateur woocommerce. J'essaie de trouver un moyen de modifier le point de terminaison json/wc/v3/orders afin que la requête entrante puisse obtenir le montant à payer pour la commande existante "en attente", ajouter un identifiant de transaction (et d'autres variables), puis permettre que le statut de la commande soit modifié en "terminé" avec une autre requête, confirmant le montant payé. J'ai été en mesure d'effectuer des actions GET et POST de base avec POSTMAN en utilisant Basic Auth au point de terminaison mentionné. J'ai besoin de conseils pour la modification de ce point final.

  6. OMAR 13 octobre 2019 | 1:37 am

    Hello Simon! thanks so much for the great tutorial. I have one question… how can i do for update multiples products in one request. For example i have more than 4000 products, i was using PUT with this endpoint https://www.bachmusic.center/wp-json/wc/v3/products/{id} and the JSON body something like this:

    {
    "sku":"{sku}",
    "name":"{name}",
    "price":"{regular_price}"
    }

    mais ne fonctionne pas, j'apprécie vraiment votre aide.
    Merci beaucoup !

  7. Soha Zain 14 octobre 2019 | 1:24 pm

    Un travail remarquable. Ces deux points sont bien couverts ; "Ajouter une clé API avec accès en lecture/écriture" et "Utiliser vos clés API pour se connecter à Insomnia". Merci de partager ce sujet de "Comment utiliser l'API de WooCommerce sans savoir coder". La meilleure partie est que l'article a tous les détails pratiques ! Continuez à partager

  8. Pasacal Burckhardt 18 octobre 2019 | 3:52 am

    Salut Simon

    Nous gérons une plateforme de GPS/tracking et nous aimerions maintenant faire la partie commerciale et le CRM avec WordPress/Woocommere. Nous sommes débutants avec Rest-API et avons besoin d'une formation.

  9. Muhammad Sarim Iftikhar 7 janvier 2020 | 6:42 am

    Veuillez envoyer une vidéo expliquant comment créer une nouvelle commande à l'aide de l'API de Woocommerce.

    • WAN MOHD AFENDI BIN 13 octobre 2020 | 10:33 am

      Oui. J'en ai besoin oo

  10. Rushab 10 janvier 2020 | 4:24 am

    Bonjour, pouvez-vous m'expliquer une url POST ? Je veux créer un utilisateur en utilisant l'Api REST.

  11. Gino Van Achte 2 février 2020 | 5:56 am

    Bonjour Simon, pouvez-vous m'aider ? Je veux mettre à jour les produits et les prix du site de vente en gros plus mon % inclus et ensuite rediriger les commandes vers le site de vente en gros. Nous sommes débutants avec Rest-API et avons besoin d'une formation.

  12. Zak 17 février 2020 | 6:39 am

    Salut,

    Est-ce que insomnia aide à connecter des apis externes à Woocommerce ? J'ai besoin de le faire afin de gérer le stock automatiquement.

    Si oui, comment puis-je le faire ?

    Merci

    • Leslie 29 avril 2021 | 6:54 am

      avez-vous trouvé une réponse ?

  13. henok 1 mai 2020 | 7:24 am

    quelqu'un, s'il vous plaît aidez-moi à obtenir des produits par catégorie

  14. Amable Leonc 7 mai 2020 | 10:50 pm

    Bonjour, excellent article. Félicitations !

    Dans mon cas, lorsque j'essaie de récupérer des informations dans :

    https://MYSITE.com/wp-json/wc/v3/products/

    OU

    https://MYSITE.com/wp-json/wc/v3/products?consumer_key=ck_01234567890&consumer_secret=cs_01234567890

    Je reçois :

    { 
    "code": "woocommerce_rest_cannot_view",
     "message": "Sorry, you can not list the resources.", 
    "data": { "status": 401 }
     }

    problème de serveur ? Autorisation REST API ?

    problème de woccommerce ?

    pouvez-vous m'aider ?

    • Sandipa Mukherjee 31 août 2020 | 7:26 am

      même problème

  15. Jared 10 juin 2020 | 5:02 am

    Bonjour Simon. Merci pour ce "mode d'emploi" si utile. Vraiment complet et pédagogique ! Super ! Un point cependant - il est dit en haut de page que c'est une "lecture de 6 minutes" ! Je travaille sur cette page depuis environ 2 heures et je suis encore en train d'essayer des choses. Je pense que je vais faire des allers-retours sur cette page pendant des semaines, voire une éternité. C'est une ressource fantastique. Merci encore.

  16. Vít 12 juin 2020 | 2:07 am

    Bonjour,
    J'obtiens 401 woocomerce_rest_cannot_view encore et encore en inomnie. Je n'ai pas trouvé de solution dans le lien ci-joint. Une idée pour corriger cette erreur ?

  17. Burak 1 août 2020 | 5:25 pm

    Merci pour cet article
    Comment obtenir les champs personnalisés de la caisse avec l'API ?
    Comme le champ du numéro de taxe que nous avons ajouté ?

  18. Anil 27 septembre 2020 | 4:15 pm

    Salut Simon,

    Merci pour tous ces bons conseils. Je me demande quelle serait l'URL GET pour obtenir le statut d'une commande en recherchant l'adresse électronique d'un client. Merci d'avance pour toute aide ou conseil.

  19. Mert 21 octobre 2020 | 1:17 pm

    Bonjour Simon. J'ai 2 sites.
    Sur le 1er site, toutes les transactions seront effectuées sauf le paiement. En appuyant sur le bouton de paiement, le client sera dirigé vers le 2e site (toutes les informations de la commande, le mode de paiement sélectionné, les informations d'adhésion, les informations d'expédition, etc.)
    Il effectuera le paiement sur le site 2 et sera ensuite redirigé vers le 1er site.

    Est-ce possible ? Par où dois-je commencer, comment puis-je le faire ? Pouvez-vous m'aider ?

    Merci.

    • Martin 26 avril 2021 | 1:44 am

      Si c'est un wp multisite, ce sera plus facile. Si ce n'est pas le cas, vous devez faire plus de vérifications que de simplement passer la commande. Par exemple, s'agit-il d'un nouveau client ou non ? Est-ce que vous gardez la quantité de stock sur les deux sites web, etc. Je pense que vous devriez construire 2 routes primaires de clients connectés et d'invités si vous permettez aux invités de passer des commandes. Personnellement, je ne comprends pas l'idée de rediriger les utilisateurs. Cela me semble malhonnête.

  20. Gus 24 octobre 2020 | 9:57 pm

    Bonjour, Comment puis-je obtenir toutes les commandes en une seule fois, je sais que Woocommerce a une limite de 100 enregistrements par page. Je ne veux pas faire de pagination. Merci beaucoup

    • Martin 26 avril 2021 | 1:49 am

      vérifiez ce filtre woocommerce_rest_batch_items_limit.

  21. Pablo 13 novembre 2020 | 3:06 pm

    Excellent article, merci de le partager. Pouvez-vous fournir un tutoriel pour utiliser l'API à partir de .net c# ?

  22. Rgoyal 14 décembre 2020 | 21 h 30

    J'essaie de réaliser ce qui suit... Y a-t-il une solution pour cela ?

    https://stackoverflow.com/questions/65285177/process-woocommerce-api-using-php-curl

  23. Max 7 janvier 2021 | 7:01 am

    Comment pourrais-je lister toutes les commandes terminées contenant un numéro de téléphone spécifique ? Je ne vois pas le numéro de téléphone comme un paramètre possible dans la doc officielle pour le endpoint wp-json/wc/v3/orders.
    Un travail à faire ?
    Merci !

  24. Julio 29 janvier 2021 | 11:47 am

    J'aimerais apprendre comment créer une requête publique de produit et pouvoir l'insérer dans une page php.

  25. Aaron 3 février 2021 | 5:46 pm

    Pourquoi activer l'ancienne API dans le cadre de ce tutoriel ? Je me pose la question car je ne l'ai pas activée et j'ai une erreur de connexion à laquelle je n'arrive pas à trouver de solution.
    Merci

  26. Zeedo65 4 février 2021 | 6:05 pm

    Bonjour
    Merci pour cet article intéressant. Je suis un débutant avec les APIs et j'ai une question si vous pouvez m'aider.

    Je ne peux pas comprendre
    Il y a longtemps que je veux comprendre cette adresse :
    https://yourdomain.com/wp-json/wc/v3/orders
    Où dois-je trouver cette adresse pour mon propre site woocommerce ? Je sais que je dois la changer pour mon domaine personnel, mais, je ne comprends pas où j'ai spécifié "wp-json/wc/v3/orders". Lorsque j'ajoute l'adresse "wp-json/wc/v3/orders" après https://mydomain.com/, j'obtiens un message 404. Donc, tous mes efforts s'arrêtent à ce stade. Pouvez-vous m'aider ?

    • Simon Gondeck 7 février 2021 | 9:02 am

      Avez-vous suivi l'étape "Se connecter à Insomnia avec les clés API" dans Insomnia ?

  27. Cam 11 février 2021 | 9:05 am

    Bonjour Simon,
    J'ai suivi le tutoriel, tout fonctionne pour moi sur Insomnia mais je ne comprends pas comment afficher les produits du flux sur ma boutique WooCommerce ?

    J'essaie d'importer des produits d'un autre site WooCommerce sur le mien via leur API.

    Devons-nous exporter le code d'Insomnia ?
    Dois-je importer quelque chose dans ma base de données ?
    Dans quel répertoire, fichier ?

    THX

  28. Pritam February 17, 2021 | 4:21 am

    Hello , thank you for the great tutorial first . I have my shipping partner who has provided me with the api documentation . There is no prebuilt plugin available for the partner’s shipping integration . SO how can i integrate it in my wordpress site ? How can I track the orders through the website and how can customers automatically get their tracking id in their account.
    Thank you for the help in advance 🙂

  29. houssem 24 février 2021 | 9:13 am

    il n'y a qu'obtenir et mettre à jour comment je crée un produit en utilisant l'api rest.
    aidez-moi s'il vous plaît

  30. Allen 2 mars 2021 | 6:57 pm

    Bonjour, excellent tutoriel. Cependant, j'ai fait des recherches sur l'api de repos de woocommerce et tous les tutoriels semblent utiliser l'api de woocommerce UNIQUEMENT pour gérer leur boutique. Mais ce que je veux faire, c'est construire une version applicative de mon magasin de sorte que les clients peuvent se connecter et obtenir toutes leurs informations spécifiques tout en N'AYANT PAS accès aux informations du back-end comme les autres informations client.
    L'api peut-elle être utilisée de cette façon ou est-elle uniquement destinée à la gestion de votre boutique ?

    • Simon Gondeck 26 mai 2021 | 6:04 pm

      Oui, l'API de WooCommerce peut être utilisée de cette façon, mais certaines de ses caractéristiques sont limitées. Cependant, vous pouvez toujours utiliser l'API REST de WordPress avec WooCommerce également. CoCart est une autre option si vous voulez construire un site WordPress/WooCommerce sans tête avec Frontity, Next js, ou Gatsby.

  31. Dayle Senior 24 avril 2021 | 4:21 am

    Salut Simon,
    Mon problème est un peu différent du reste des commentaires. Je me demande comment je dois utiliser l'API REST de WooCommerce dans le cadre d'un réseau multisite.

    Plutôt que de connecter plus de 10 sous-sites avec des clés API distinctes à notre CRM, il existe sûrement un moyen de connecter le multisite dans son ensemble ? J'ai cherché sur Google pendant des jours mais je n'ai pas trouvé de réponse.

  32. Julio César 18 mai 2021 | 8:59 pm

    Bonjour Simon, vous pouvez peut-être me donner un coup de main, j'ai besoin de connecter un CRM avec Woocommerce mais ce CRM n'a pas de support ou le plugin n'a qu'un api, comment faire cela avec Innsonia, un indice ? Je vous remercie de votre aide.

    • Simon Gondeck 18 mai 2021 | 9:03 pm

      Hey Julio, quel CRM essayez-vous d'intégrer avec l'API WooCommerce ?

      • Julio César May 19, 2021 | 10:21 am

        Hi Simon, thanks for your answer, the CRM is Stel Order https://www.stelorder.com/en/ I never heard before, but I have a client who works with this few months ago and he needs to use with woocommerce, I will be very grateful any clue you can give me.

        • Simon Gondeck July 19, 2021 | 5:30 pm

          Hey Julio, I would look at using Integromat to automate this. It would probably be a lot easier than building your own custom API. Integromat would be the middle man between WooCommerce and Stel Order. Integromat does have integration with WooCommerce but no integration with Stel Order. However, Integromat allows you to do custom HTTP requests. For example, you could setup a scenario on Integromat when a new order is created and then send that data using a custom HTTP request to Stel Order.

  33. Eddy June 9, 2021 | 8:39 am

    Hi, I want to create a selection of product and add to cart via REST API is possibile? Or I need to create a virtual cart independent and complete the order also via rest api?

    • Simon Gondeck July 19, 2021 | 5:25 pm

      Hey Eddy! You could use the REST API. I also would recommend looking into using something like CoCart (built for WooCommerce stores that want to have a headless site).

  34. junior August 19, 2021 | 10:03 pm

    Hi, thanks for your explanations, how can I filter all orders that contain product id X or customers who haven’t purchased for more than 90 days?

FAQ

Savez-vous comment je peux mettre à jour l'adresse de livraison d'un client avec l'API de WooCommerce ?

Pour mettre à jour l'adresse de livraison d'un client, il faut une requête PUT.

Voici un exemple de requête PUT : Cliquez sur "Body" > "JSON" et entrez cette requête

{
	"shipping": {
	"first_name": "John",
	"last_name": "Doe",
	"company": "Storm Creek",
	"address_1": "110 Demo Drive",
	"address_2": "Suite 110",
	"city": "Minneapolis",
	"state": "MN",
	"postcode": "94203",
	"country": "US"
	}
}

Comment connecter WooCommerce API avec Insomnia ?

1. Après avoir téléchargé Insomnia, ouvrez l'application et cliquez sur "Nouvelle demande".

2. Sous le menu déroulant de l'onglet "Basic", cliquez sur "Basic Auth" et entrez les informations d'identification suivantes :

3. Ensuite, saisissez votre consumer_key et consumer_secret pour les clés API que vous avez générées sur votre tableau de bord WooCommerce.

  • nom d'utilisateur = clé du consommateur
  • mot de passe = consumer_secret