By default, inventory can be added/updated for each location when editing a product or variation manually in the WooCommerce admin. Once the inventory is set, and the product is saved, we will recalculate the total inventory for the product/variation to be the sum of the inventory in all locations.
We are also compatible with retrieving and updating inventory levels over the WooCommerce REST API.
- Inventory is always stored/managed using the location ID. This is set when creating a location, in the Locations tab of our integration. The Location ID is used both in the custom fields in the database and over the WooCommerce REST API.
Querying Simple Product inventory
wp-json/wc/v3/products/
We support retrieving inventory levels for simple products via the WooCommerce REST API by including the Warehouse/Location ID in the top-level API response. When sending a GET request for the products endpoint, the response will contain a new property called warehouse - that will contain a list of location IDs and inventory value in that location. The structure is: "locationid": "inventorylevel".
Simple Product (full response)
"warehouse": {
"204": "5",
"205": "9"
}
Querying Variation inventory
wp-json/wc/v3/products/000/variations
We support retrieving inventory levels of variations via the WooCommerce REST API by including the Warehouse/Location ID in the API response for each variation. When sending a GET request for the product/variation endpoint, the response will contain a new property called warehouse - that will contain a list of location IDs and inventory value in that location. The structure is: "locationid": "inventorylevel".
Variable Product (full response)
{
"id": 267,
"sku": "LG-12",
"price": "15",
"regular_price": "15",
"warehouse": {
"204": "1",
"205": "3"
},
},
{
"id": 266,
"sku": "M-12",
"price": "11",
"regular_price": "11",
"sale_price": "",
"warehouse": {
"204": "2"
},
Updating Product inventory
wp-json/wc/v3/products/
wp-json/wc/v3/products/00/variations/00
We support updating inventory levels for simple products and variations via the WooCommerce REST API with a PUT request. When sending a PUT request for the products or variation endpoint, the request should follow the below structure:
Simple Product
{
"meta_data" : [
{
"key": "_stocks_location_204",
"value": "25"
},
{
"key": "_stocks_location_205",
"value": "20"
}
]
}