Import Stock
Typically the data on your stock or inventory is kept in your ERP or in your WMS. But it is also possible you want to import stock levels of one of your suppliers directly into Propeller. Regardless of the source of the inventory, you want to keep your stock information in Propeller up to date so you can either show exact stock information on your website or portal, or at least a rough indication of the available stock levels of your products.
To periodically sync stock to Propeller the bulk inventory endpoint is the most logical endpoint to use.
Endpoint
POST /v2/inventory/bulk/:lookupKey/:inventoryType
The endpoint has two path parameters:
:lookupKey— how to match inventory to products in Propeller (see External system identification below):inventoryType— the type of inventory:localorsupplier(see Local vs supplier stock below)
Example: POST /v2/inventory/bulk/sourceId/local
External system identification
You can match the stock to the products in Propeller in several ways. The available lookup keys are id (the Propeller product ID), sourceId, sku or supplierCode. The lookup key is set as a path parameter. See Sources for how source combinations work.
Local vs supplier stock
The endpoint allows for syncing two types of inventory: local or supplier. This way you can distinguish between your own local inventory and possible inventories of your suppliers. The inventory type is set as a path parameter in the call.
Data fields
quantity: the actual stock number as an integer. You always need to send the full stock as an integer and cannot send mutations like minus 1 or plus 10. Propeller also does not update inventory numbers by itself based on online sales to prevent confusion.
warehouseId: it can be relevant to display stock levels in various physical locations. Think about warehouses in multiple countries or when you allow the end customer to pick up their orders. In those cases you can create different warehouses, which will get separate warehouse IDs. Using the warehouse IDs in your inventory import allows you to separate stock levels for multiple warehouses.
nextDeliveryDate: if you have information on when new stock will arrive in your warehouse you can import this as a date in the nextDeliveryDate field. This can be useful information for your customers when making their purchase decision.
Batch size
This is a bulk endpoint so you can post lots of inventory data in one payload. We advise a batch size of roughly 1000 products per call.
Request body
{
"inventory": [
{
"location": "B45",
"nextDeliveryDate": "2029-03-01 00:00:00",
"quantity": 75,
"source": "TECHDATA",
"sourceId": "NCABD70004"
}
]
}
Response
Each inventory item in the batch returns a result:
{
"data": [
{
"success": true,
"id": 11520,
"action": "update"
}
],
"messages": ["Completed"],
"total": 1
}
successindicates whether the operation succeededidis the Propeller internal inventory IDactioniscreateorupdatedepending on whether the inventory record already existed
See also
- Sources for how source combinations work in bulk operations
- REST API Reference for the full endpoint specification