WooCommerce API: The Basics to Get Started

Published 21 October 2015 | Updated 18 August 2020 |

woocommerce api

WooCommerce is one of the best-known shopping carts that, according to the latest stats, powers over 30% of all online shops. Integration with this superb platform can be an excellent opportunity for shipping management, inventory and order management, email marketing, accounting system, ERP, pricing software, dropshipping automation systems, and other software providers. They will get them all the 3 million shopping carts’ users as their potential customers.

In order to integrate with WooCommerce you’ll need to work with its API (Application Programming Interface). This article will provide you with the basic information about its structure and will help you understand how to work with it. So let's start our acquaintance with it.

What is WooCommerce API?

The WooCommerce REST API is an essential part of this platform that allows working with data such as orders, coupons, products, customers, etc. WooCommerce has many API versions. The current version is 4.4.0, but there are older ones that customers keep using today. Here are some of the enhancements of the latest WooCommerce version:

  • Adds alt attribute to photoswipe gallery images
  • Added "order_total" to the wcadmin_orders_edit_status_change tracker event
  • Corrected the schema datatype for coupon expiry_date, date_expires, and date_expires_gmt fields
  • Added woocommerce_order_item_quantity filter to ReserveStock::reserve_stock_for_order
  • Added the removed_coupon_in_checkout event that is triggered on the Checkout page after a coupon is removed using .woocommerce-remove-coupon button
  • Allow extend BACS accounts filter with order ID
  • Allow set order_key while creating an order via CRUD

In order to start working with WooCommerce REST API, you have to enable it. You can do it by simply visiting WordPress Admin page > Settings > General tab and ticking the appropriate checkbox.

The WooCommerce REST API supports the JSON format, as a default, but you can easily change it to the XML. It works with such four main HTTP methods as GET, POST, PUT, and DELETE. But there is one more - HEAD. It сan be used to return just the HTTP header information. Thanks to these methods you can operate with information on products, orders, inventory, customers and their addresses.

In order to make API calls, you’ll need to pass by the process of authentication. Thus, the system recognizes your identity and allows you to access the API resource. There are two possible ways to authenticate with WooCommerce REST API such as one-legged OAuth 1.1 and simple HTTPS authentication. The method you’ll choose depends on whether your site supports SSL certificate or not. But shopping platform developers recommend using HTTPS authentication if it’s possible, as it is easier to work with.

WooCommerce API Integration Challenges

Huge number of API versions

The main problem with WooCommerce Rest API integration is a high number of API versions. What’s can make a developer more confused is an API built into new versions of core WordPress, and a “Legacy API”, which comes as a separate module.

Most developers write integration with the newest versions. So, those online store owners that are using the oldest WooCommerce versions and are not planning to upgrade to the new version for some reason are being left behind.

Due to the high number of API versions, it is obvious that there will be frequent changes in the future. Therefore, developers will have to change the integration code accordingly.

PHP code modules that can lead to slow work

Requests to WooCommerce REST API one way or another involve downloading the WP/WC PHP code modules. This leads to an increased store load when retrieving a huge amount of data if the store server is not powerful enough. This results in slow work or total store unavailability.

WC may not have requested functionality

Although WooCommerce REST API is quite streamlined, you may not find some functionality. You will have to deal with the Native API.

The native API documentation is far from ideal. Some functions are unclear and uninformative, for example, get_children (get what children?). There are many different functions that do the same (one could do it) - e.g. sanitize_*, esc_*.

WooCommerce Integration Solution

To summarize all the mentioned above, WooCommerce (REST) API allows you to get access to the data of a particular online store and extract information on orders, customers, products, categories, etc. Integration with WooCommerce can open a plenty of possibilities for your business, but it requires much time, money and considerable efforts to be done. You’ll also need to find an experienced developer that could elaborate integration module and keep maintain it in future. So, is there any less complicated way out?

API2Cart is a solution that can help you connect to multiple platforms at once with time and money saved. The service is integrated with WooCommerce and enables you to retrieve all the necessary information and operate with orders, products, categories, customers, etc. Moreover, if you decide to perform integration with WooCommerce via API2Cart, you’ll get a connection with 40+ other platforms as a bonus. Among those top shopping carts are such market leaders as Magento, Shopify, Bigcommerce, Prestashop, etc.

API2Cart supports all WooCommerce versions starting from 1.6.0 in which there was no native API at all. Moreover, our developers always track changes in the code of new WooCommerce versions. Using our service integration with WooCommerce is always actual.

API2Cart API methods for WooCommerce Integration

API2Cart provides a plenty of methods to work with WooCommerce store data:

  • for working with products: product.list/ count/ add/ update/ delete
  • for working with categories: category.list/ count/ add/ update/ delete/ assign/ image.add/ image.delete
  • for working with orders: order.count/ list/ add/ update/ status.list/ abandoned.list
  • for working with shipments: order.shipment.list/ shipment.add/ shipment.update/ shipment.tracking.add
  • for working with customers: customer.list/ count/ find/ add

You can find all supported methods here or in our documentation.

How to Start Implementing WooCommerce Integration via API2Cart?

1. Register your API2Cart account

Enter your data and register a new API2Cart account.

2. Add a store based on WooCommerce

You can do it manually by clicking the “Add store” button or automatically via API request using account.cart.add method.

3. Establish a connection with your customer's store

You can download WooCommerce Plugin in API2Cart Plugin Building section and provide it to your customer for installation on his store.

4. Enter the store key generated by WooCommerce Plugin

Your customer can download a plugin as a zip file and install it on his store. The store key will be generated by a plugin automatically.

5. Work with needed WooCommerce store data

After establishing a connection between the web store and your system, you can use all API methods supported for WooCommerce to work with the store.

In case you would like to find out more information on how API2Cart works, you can simply visit the service documentation page. If you have any questions, do not hesitate to schedule a FREE consultation with our expert.